reinforcement-learning: 核心強化學習演算法的獨立 PyTorch 實作集合

reinforcement-learning: 核心強化學習演算法的獨立 PyTorch 實作集合

它解決了什麼問題

這個儲存庫提供了一系列清晰、獨立的強化學習 (RL) 演算法程式碼範例,範圍從基礎概念到深度強化學習。它透過為每個演算法提供單一檔案來簡化學習過程,使實作內容易於閱讀與研究。

運作方式

該專案根據演算法所使用的環境將 RL 演算法分為三大類別:

  • Grid World: 基礎 RL 概念,如 Policy Iteration、Value Iteration、SARSA、Q-Learning 與 REINFORCE。
  • CartPole: 實作 Deep Q-Networks (DQN) 與 Proximal Policy Optimization (PPO) 以解決平衡任務。
  • Atari: 將 DQN 與 PPO 應用於 Breakout 與 Montezuma's Revenge 等 Atari 遊戲的高階實作。

對象是誰

它專為尋求透過易讀程式碼範例以及在現代硬體 (Apple Silicon) 上進行基準測試效能指標,來以實作導向方式學習強化學習的人士所設計。

重點特色

  • 獨立實作: 每個演算法都包含在單一檔案中,方便查閱。
  • 引用文獻: 每個檔案都包含原始論文引用與核心更新方程式。
  • 現代化技術棧: 使用 PyTorch 2.11、Gymnasium 1.2 與 Pygame 進行渲染。
  • 效能基準測試: 包含在 M3/M4 晶片上執行 Atari 遊戲的詳細訓練時間、RAM 使用量與最終分數。

Sources