Files
rl-atari/强化学习个人项目报告
Serendipity e8b51240f9 feat: 添加DQN强化学习项目框架和核心实现
实现完整的DQN算法框架,用于Atari Space Invaders游戏训练。包括:
- QNetwork和DuelingQNetwork神经网络架构
- 经验回放缓冲区(标准和优先级版本)
- DQN智能体实现ε-greedy策略和Double DQN
- 环境包装器(灰度化、调整大小、帧堆叠等)
- 训练器、评估脚本和图表生成工具
- 详细的项目文档和依赖配置
2026-05-01 10:01:12 +08:00
..

PPO for CarRacing-v3

From-scratch PPO implementation for CarRacing-v3. No Stable-Baselines or other RL libraries used.

Setup

conda activate my_env
uv pip install -r requirements.txt

Train

python train.py --steps 500000

Evaluate

python src/evaluate.py --model models/ppo_carracing_final.pt --episodes 10

TensorBoard

tensorboard --logdir logs/tensorboard

Project Structure

src/
├── network.py       # Actor (Gaussian policy) and Critic (Value) networks
├── replay_buffer.py  # Rollout buffer with GAE computation
├── trainer.py        # PPO update with clipped surrogate objective
├── utils.py          # Environment wrappers (grayscale, resize, frame stack)
└── evaluate.py       # Evaluation script
train.py              # Main training entry point
models/               # Saved checkpoints
logs/tensorboard/     # TensorBoard logs

Hyperparameters

Parameter Value
Learning rate 3e-4
Gamma 0.99
GAE lambda 0.95
Clip epsilon 0.2
PPO epochs 4
Mini-batch size 64
Rollout steps 2048
Entropy coefficient 0.01
Value coefficient 0.5
Max gradient norm 0.5