From 7affccc695096fef17f3241046fb86093920fc61 Mon Sep 17 00:00:00 2001 From: 8x54zj-m <8x54zj-m@motrixlab.local> Date: Tue, 30 Jun 2026 17:30:24 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20noise=20scales=20*obs=5Fscale=20(match?= =?UTF-8?q?=20upstream),=20noise=5Fjoint=5Fangle=200.03=E2=86=920.01?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- motrix_envs/src/motrix_envs/locomotion/go1/dreamwaq.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/motrix_envs/src/motrix_envs/locomotion/go1/dreamwaq.py b/motrix_envs/src/motrix_envs/locomotion/go1/dreamwaq.py index 396caf8..2463c5d 100644 --- a/motrix_envs/src/motrix_envs/locomotion/go1/dreamwaq.py +++ b/motrix_envs/src/motrix_envs/locomotion/go1/dreamwaq.py @@ -110,6 +110,7 @@ class DreamWaQCfg(Go1WalkNpEnvCfg): self.control_config.stiffness = 28.0 self.control_config.damping = 0.7 self.control_config.action_scale = 0.25 # 上游原值(基类默认 0.05) + self.noise_config.scale_joint_angle = 0.01 # 上游原值(基类默认 0.03) self._apply_dreamwaq() def _apply_dreamwaq(self): @@ -224,11 +225,13 @@ class DreamWaQTask(Go1WalkTask): # 观测噪声 nc = self.cfg.noise_config noise_scale_vec = np.zeros(45, dtype=np.float32) - noise_scale_vec[0:3] = nc.scale_gyro + # 上游: noise_vec = noise_scale * obs_scale(noise_level 单独乘在 noise 张量上) + n = self.cfg.normalization + noise_scale_vec[0:3] = nc.scale_gyro * n.ang_vel noise_scale_vec[3:6] = nc.scale_gravity noise_scale_vec[6:9] = 0.0 - noise_scale_vec[9:21] = nc.scale_joint_angle - noise_scale_vec[21:33] = nc.scale_joint_vel + noise_scale_vec[9:21] = nc.scale_joint_angle * n.dof_pos + noise_scale_vec[21:33] = nc.scale_joint_vel * n.dof_vel noise_scale_vec[33:45] = 0.0 noise = (2.0 * np.random.rand(*obs.shape).astype(np.float32) - 1.0) * nc.level obs = obs + noise * noise_scale_vec[np.newaxis, :]