Unity-Technologies/ml-agents
The Unity Machine Learning Agents Toolkit (ML-Agents) is an open-source project that enables games and simulations to serve as environments for training intelligent agents using deep reinforcement learning and imitation learning.
What it solves
它讓遊戲開發者與 AI 研究者能夠使用 Unity 遊戲與模擬作為訓練智慧代理的環境。這消除了從頭自行構建訓練環境的需求,從而能夠創造複雜的 NPC 行為、自動化遊戲測試,以及評估遊戲設計決策。
How it works
此工具組提供 Python API 與 Unity SDK,將 Unity 場景與基於 PyTorch 的機器學習演算法連接。它支援多種訓練方法,包括深度強化學習(PPO、SAC、MA-POCA、自我對弈)、模仿學習(BC、GAIL)以及神經演化。使用者可以定義課程學習情境,並利用環境隨機化來打造健壯的代理,最後透過原生跨平台推論引擎部署它們。
Who it’s for
- Game Developers: 用於創建智慧 NPC 或自動化測試遊戲建置。
- AI Researchers: 利用 Unity 豐富的 3D/2D/VR/AR 環境作為評估新 AI 演算法的平台。
- Hobbyists: 輕鬆在自己的遊戲中實作最先進的 AI。
Highlights
- Diverse Training Methods: 支援強化學習、模仿學習與神經演化。
- Multi-Agent Support: 能訓練單代理、合作多代理與競爭多代理情境。
- Integration Ready: 可包裝為 Gym 或 PettingZoo 環境,以相容其他 AI 工具。
- Extensible: 允許使用者加入自訂訓練演算法與元件。
- Scalable: 支援跨多個同時執行的 Unity 環境實例進行訓練。