🚀 PPO 智能體玩轉 PongNoFrameskip-v4
本項目是一個經過訓練的 PPO 智能體,它使用 stable-baselines3 庫 和 RL Zoo 來玩 PongNoFrameskip-v4 遊戲。RL Zoo 是 Stable Baselines3 強化學習智能體的訓練框架,包含超參數優化和預訓練智能體。
🚀 快速開始
運行已訓練模型
若要運行已訓練的模型,可使用以下命令:
# 下載模型並保存到 logs/ 文件夾
python -m rl_zoo3.load_from_hub --algo ppo --env PongNoFrameskip-v4 -orga sb3 -f logs/
python enjoy.py --algo ppo --env PongNoFrameskip-v4 -f logs/
訓練新模型
若要訓練新模型,可使用以下命令:
python train.py --algo ppo --env PongNoFrameskip-v4 -f logs/
# 上傳模型並生成視頻(如果可能)
python -m rl_zoo3.push_to_hub --algo ppo --env PongNoFrameskip-v4 -f logs/ -orga sb3
✨ 主要特性
- 預訓練模型:提供了一個預訓練的 PPO 智能體,可直接用於玩 PongNoFrameskip-v4 遊戲。
- 訓練框架:使用 RL Zoo 作為訓練框架,支持超參數優化。
📦 安裝指南
- 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 ppo --env PongNoFrameskip-v4 -orga sb3 -f logs/
python enjoy.py --algo ppo --env PongNoFrameskip-v4 -f logs/
高級用法
python train.py --algo ppo --env PongNoFrameskip-v4 -f logs/
# 上傳模型並生成視頻(如果可能)
python -m rl_zoo3.push_to_hub --algo ppo --env PongNoFrameskip-v4 -f logs/ -orga sb3
🔧 技術細節
超參數
OrderedDict([('batch_size', 256),
('clip_range', 'lin_0.1'),
('ent_coef', 0.01),
('env_wrapper',
['stable_baselines3.common.atari_wrappers.AtariWrapper']),
('frame_stack', 4),
('learning_rate', 'lin_2.5e-4'),
('n_envs', 8),
('n_epochs', 4),
('n_steps', 128),
('n_timesteps', 10000000.0),
('policy', 'CnnPolicy'),
('vf_coef', 0.5),
('normalize', False)])
模型指標
屬性 |
詳情 |
模型類型 |
PPO |
訓練數據 |
PongNoFrameskip-v4 |
平均獎勵 |
21.00 +/- 0.00 |