首页
/ 开源项目 `on-policy` 使用教程

开源项目 `on-policy` 使用教程

2026-01-16 10:07:20作者:凌朦慧Richard

该项目是一个专注于研究和比较强化学习中**在线策略(On-Policy)**算法的开源平台。下面我们将依次介绍其目录结构、启动文件以及配置文件。

1. 项目目录结构及介绍

on-policy/
├── data/                   # 存储实验数据和日志的目录
├── envs/                  # 包含不同的环境模拟器
│   ├── gym_envs/           # 使用gym库创建的环境
│   └── ...                 # 其他环境模拟器
├── algorithms/            # 各种在线策略强化学习算法实现
│   ├── ppo/                # Proximal Policy Optimization (PPO)
│   ├── sac/                # Soft Actor-Critic (SAC)
│   └── ...                 # 更多算法
├── utils/                 # 辅助工具和通用功能
│   ├── logger.py           # 日志记录工具
│   ├── runner.py           # 实验运行器
│   └── ...                 # 其他实用工具
├── config/                # 配置文件所在目录
│   ├── common.yml          # 公共配置
│   ├── ppo_config.yml      # PPO算法特定配置
│   └── sac_config.yml       # SAC算法特定配置
└── main.py                 # 主入口文件

2. 项目的启动文件介绍

main.py 是项目的主要启动文件,它负责加载配置,初始化环境和算法,以及执行实验循环。你可以通过以下命令运行默认实验:

python main.py --config <algorithm_name>/config.yml

这里 <algorithm_name> 是你要运行的算法名称,如 pposac

3. 项目的配置文件介绍

项目中的配置文件位于 config/ 目录下,通常分为两部分:

  • common.yml: 包含所有算法通用的配置选项,比如环境设置、训练步骤、学习率等。
  • <algorithm_name>_config.yml: 与特定算法相关的配置,如优化器设置、网络架构等。

配置文件使用 YAML 格式,易于阅读和编辑。例如,ppo_config.yml 文件可能包括以下内容:

env:
  name: <env_name>        # 环境名称,对应envs/gym_envs中的环境
  seed: 42                # 伪随机数种子

algo:
  name: ppo               # 算法名称
  num_epochs: 10          # 训练轮数
  batch_size: 64          # 批次大小
  learning_rate: 3e-4     # 学习率
  entropy_coeff: 0.01    # 熵系数,用于鼓励探索
  ...

log:
  save_path: ./data       # 存储路径
  interval_steps: 1000   # 存储日志的间隔步数

通过修改这些配置文件,你可以自定义训练过程以适应你的需求。

配置文件使用示例

python main.py --config ppo/config.yml --env CartPole-v1

上述命令将以 CartPole-v1 环境运行 PPO 算法,使用配置文件 ppo_config.yml 中定义的设置。

希望这个简介帮助你更好地理解和使用 on-policy 项目。如果你准备进一步探索,建议深入阅读源代码并结合项目文档以获取更多信息。

登录后查看全文
热门项目推荐
相关项目推荐