diff --git a/go2_gym/envs/wrappers/history_wrapper.py b/go2_gym/envs/wrappers/history_wrapper.py index 8d80231..62f040f 100755 --- a/go2_gym/envs/wrappers/history_wrapper.py +++ b/go2_gym/envs/wrappers/history_wrapper.py @@ -1,3 +1,10 @@ +''' +通过使用 HistoryWrapper +可以让 Agent 在做决策时不仅基于当前的观察状态,还能利用之前的历史信息。 +这种历史信息对于解决那些需要考虑时间序列数据的任务特别有用, +比如在处理具有时间依赖性的动态环境时。 +''' + import isaacgym assert isaacgym import torch diff --git a/scripts/tmp/legged_data/adaptation_module_latest.jit b/scripts/tmp/legged_data/adaptation_module_latest.jit index 3278d66..eb0efa4 100644 Binary files a/scripts/tmp/legged_data/adaptation_module_latest.jit and b/scripts/tmp/legged_data/adaptation_module_latest.jit differ diff --git a/scripts/tmp/legged_data/body_latest.jit b/scripts/tmp/legged_data/body_latest.jit index a8dafb2..859f9ca 100644 Binary files a/scripts/tmp/legged_data/body_latest.jit and b/scripts/tmp/legged_data/body_latest.jit differ diff --git a/scripts/train.py b/scripts/train.py index 0fda1c6..b657bc2 100755 --- a/scripts/train.py +++ b/scripts/train.py @@ -6,18 +6,27 @@ def train_go2(headless=True): from go2_gym.envs.base.legged_robot_config import Cfg from go2_gym.envs.go2.go2_config import config_go2 + # 这里MIT自己写的VelocityTrackingEasyEnv, 继承于legged_robot.py from go2_gym.envs.go2.velocity_tracking import VelocityTrackingEasyEnv from ml_logger import logger + # rsl_rl PPO参数 from go2_gym_learn.ppo_cse import Runner from go2_gym.envs.wrappers.history_wrapper import HistoryWrapper from go2_gym_learn.ppo_cse.actor_critic import AC_Args from go2_gym_learn.ppo_cse.ppo import PPO_Args from go2_gym_learn.ppo_cse import RunnerArgs + config_go2(Cfg) + + RunnerArgs.max_iterations = 30000 + RunnerArgs.save_interval = 100 + RunnerArgs.save_video_interval = 100 + + Cfg.commands.num_lin_vel_bins = 30 Cfg.commands.num_ang_vel_bins = 30 Cfg.curriculum_thresholds.tracking_ang_vel = 0.7 @@ -222,9 +231,14 @@ if __name__ == '__main__': from ml_logger import logger from go2_gym import MINI_GYM_ROOT_DIR + # 获取正在执行的 Python 脚本文件的文件名(不包含路径和扩展名) stem = Path(__file__).stem + # 2024-03-18/train/142238.667503 + # 年-月-日/本文件的文件名/14时22分38秒...微秒 logger.configure(logger.utcnow(f'gait-conditioned-agility/%Y-%m-%d/{stem}/%H%M%S.%f'), root=Path(f"{MINI_GYM_ROOT_DIR}/runs").resolve(), ) + # 记录了一组配置,这些配置定义了在训练过程中需要追踪的各种指标,并将这些配置保存在名为 .charts.yml 的文件中 + # 下面配置中的指标也会print在命令行中 logger.log_text(""" charts: - yKey: train/episode/rew_total/mean