From 89dce4524c7ac9f412d8869725f9f13fb59c711b Mon Sep 17 00:00:00 2001 From: wertyuilife Date: Mon, 30 Mar 2026 19:33:43 +0800 Subject: [PATCH] =?UTF-8?q?remove=20all=20reward=20=E2=80=9Cprojected=5Fgr?= =?UTF-8?q?avity=5Fb=20scale=E2=80=9D=20to=20align=20with=20go2=5Frl=5Fgym?= =?UTF-8?q?.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../robot_lab/robot_lab/tasks/go2/mdp/rewards.py | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/source/robot_lab/robot_lab/tasks/go2/mdp/rewards.py b/source/robot_lab/robot_lab/tasks/go2/mdp/rewards.py index ae974ae..1000566 100644 --- a/source/robot_lab/robot_lab/tasks/go2/mdp/rewards.py +++ b/source/robot_lab/robot_lab/tasks/go2/mdp/rewards.py @@ -31,7 +31,7 @@ def track_lin_vel_xy_exp( dim=1, ) 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 @@ -44,7 +44,7 @@ def track_ang_vel_z_exp( # compute the error 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.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 @@ -487,7 +487,7 @@ def base_height_l2( adjusted_target_height = target_height # Compute the L2 squared penalty 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 @@ -496,7 +496,7 @@ def lin_vel_z_l2(env: ManagerBasedRLEnv, asset_cfg: SceneEntityCfg = SceneEntity # extract the used quantities (to enable type-hinting) asset: RigidObject = env.scene[asset_cfg.name] 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 @@ -505,7 +505,7 @@ def ang_vel_xy_l2(env: ManagerBasedRLEnv, asset_cfg: SceneEntityCfg = SceneEntit # extract the used quantities (to enable type-hinting) asset: RigidObject = env.scene[asset_cfg.name] 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 @@ -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 # sum over contacts for each environment 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 @@ -530,7 +530,7 @@ def flat_orientation_l2(env: ManagerBasedRLEnv, asset_cfg: SceneEntityCfg = Scen # extract the used quantities (to enable type-hinting) asset: RigidObject = env.scene[asset_cfg.name] 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 @@ -603,7 +603,7 @@ def feet_regulation( * torch.exp(-feet_height / (0.025 * base_height_target)) ).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