Corgi Game Reinforcement Learning
This video shows the trained RL agent successfully navigating the game environment.
Key Learnings
- Practical implementation of reinforcement learning algorithms
- Different RL algorithms and their capabilities
- Value of iterating on reward function design and state space design
- Unity ML-Agents framework capabilities
Project Overview
I created a reinforcement learning agent to play "Run, Corgi, Run!" in a custom Unity environment. This project helped me understand the practical challenges of implementing RL algorithms and the importance of state space design. Project scope included:
- Integrated ML-Agents with a 2D game in Unity to create a custom environment and feed information to the agent
- Debugged issues with the game code and environment feeding incorrect information to the agent
- Implemented custom reward system to encourage desired agent behavior
- Trained the agent on a cloud server, comparing both PPO and SAC algorithms
- Experimented with different hyperparameter configurations to optimize learning
Technical Details
- Utilized GPU compute on server to train the agent quickly
- Monitored training progress with TensorBoard and adjusted parameters for optimal performance
- Considered curriculum learning to overcome game complexity
Technologies Used
Unity
ML-Agents
PPO
SAC
Reinforcement Learning
C#
TensorBoard