fix: action_scale 0.05→0.25 (upstream value, 5x difference)
This commit is contained in:
@@ -109,6 +109,7 @@ class DreamWaQCfg(Go1WalkNpEnvCfg):
|
|||||||
self.commands = DreamWaQCfg.Commands()
|
self.commands = DreamWaQCfg.Commands()
|
||||||
self.control_config.stiffness = 28.0
|
self.control_config.stiffness = 28.0
|
||||||
self.control_config.damping = 0.7
|
self.control_config.damping = 0.7
|
||||||
|
self.control_config.action_scale = 0.25 # 上游原值(基类默认 0.05)
|
||||||
self._apply_dreamwaq()
|
self._apply_dreamwaq()
|
||||||
|
|
||||||
def _apply_dreamwaq(self):
|
def _apply_dreamwaq(self):
|
||||||
@@ -602,11 +603,13 @@ class DreamWaQTask(Go1WalkTask):
|
|||||||
steps = state.info.get("steps", np.zeros(self._num_envs, dtype=np.int32))
|
steps = state.info.get("steps", np.zeros(self._num_envs, dtype=np.int32))
|
||||||
will_end = state.terminated | (steps >= self._cfg.max_episode_steps - 1)
|
will_end = state.terminated | (steps >= self._cfg.max_episode_steps - 1)
|
||||||
if will_end.any():
|
if will_end.any():
|
||||||
|
# 除以 max_episode_length_s,与上游对齐(上游: ep_sum / max_episode_length_s)
|
||||||
|
ep_len_s = self._cfg.max_episode_steps * self._cfg.ctrl_dt
|
||||||
ep_report = state.info.get("ep_report", {})
|
ep_report = state.info.get("ep_report", {})
|
||||||
for k in scaled_terms:
|
for k in scaled_terms:
|
||||||
ek = f"ep_{k}"
|
ek = f"ep_{k}"
|
||||||
vals = state.info.get(ek, np.zeros(self._num_envs, dtype=np.float32))[will_end]
|
vals = state.info.get(ek, np.zeros(self._num_envs, dtype=np.float32))[will_end]
|
||||||
ep_report[f"rew_{k}"] = float(np.mean(vals))
|
ep_report[f"rew_{k}"] = float(np.mean(vals) / ep_len_s)
|
||||||
tl = state.info.get("terrain_level", np.zeros(self._num_envs, dtype=np.int32))[will_end]
|
tl = state.info.get("terrain_level", np.zeros(self._num_envs, dtype=np.int32))[will_end]
|
||||||
ep_report["terrain_level"] = float(np.mean(tl))
|
ep_report["terrain_level"] = float(np.mean(tl))
|
||||||
state.info["ep_report"] = ep_report
|
state.info["ep_report"] = ep_report
|
||||||
|
|||||||
Reference in New Issue
Block a user