🚀 DQN 智能体在 MountainCar-v0 环境中的应用
本项目是一个经过训练的 DQN 智能体,它在 MountainCar-v0 环境中进行学习和决策。该智能体借助 stable-baselines3 库 和 RL Zoo 实现。RL Zoo 是一个针对 Stable Baselines3 强化学习智能体的训练框架,包含超参数优化和预训练智能体。
🚀 快速开始
模型使用(借助 SB3 RL Zoo)
你可以按照以下步骤使用预训练模型:
# 下载模型并保存到 logs/ 文件夹
python -m rl_zoo3.load_from_hub --algo dqn --env MountainCar-v0 -orga sb3 -f logs/
python enjoy.py --algo dqn --env MountainCar-v0 -f logs/
模型训练(借助 RL Zoo)
若要重新训练模型,可执行以下命令:
python train.py --algo dqn --env MountainCar-v0 -f logs/
# 上传模型并生成视频(若支持)
python -m rl_zoo3.push_to_hub --algo dqn --env MountainCar-v0 -f logs/ -orga sb3
📦 安装指南
文档中未明确提及安装步骤,你可参考以下链接进行安装:
- RL Zoo: https://github.com/DLR-RM/rl-baselines3-zoo
- SB3: https://github.com/DLR-RM/stable-baselines3
- SB3 Contrib: https://github.com/Stable-Baselines-Team/stable-baselines3-contrib
💻 使用示例
基础用法
以下代码展示了如何下载并使用预训练模型:
# 下载模型并保存到 logs/ 文件夹
python -m rl_zoo3.load_from_hub --algo dqn --env MountainCar-v0 -orga sb3 -f logs/
python enjoy.py --algo dqn --env MountainCar-v0 -f logs/
高级用法
若你需要重新训练模型并上传,可使用以下命令:
python train.py --algo dqn --env MountainCar-v0 -f logs/
# 上传模型并生成视频(若支持)
python -m rl_zoo3.push_to_hub --algo dqn --env MountainCar-v0 -f logs/ -orga sb3
🔧 技术细节
超参数设置
以下是训练该模型时使用的超参数:
OrderedDict([('batch_size', 128),
('buffer_size', 10000),
('exploration_final_eps', 0.07),
('exploration_fraction', 0.2),
('gamma', 0.98),
('gradient_steps', 8),
('learning_rate', 0.004),
('learning_starts', 1000),
('n_timesteps', 120000.0),
('policy', 'MlpPolicy'),
('policy_kwargs', 'dict(net_arch=[256, 256])'),
('target_update_interval', 600),
('train_freq', 16),
('normalize', False)])
模型评估指标
属性 |
详情 |
算法类型 |
DQN |
训练环境 |
MountainCar-v0 |
平均奖励 |
-103.40 ± 7.49 |