Inspiration
The initial three members of our group are taking CSE 368: Intro To Artificial Intelligence together, so we decided to try and apply what we have learned to train a reinforcement algorithm to play Breakout for the Atari 2600. Although we have experience with simple reinforcement learning algorithms, this was our very first time attempting to implement deep Q-learning or any sort of neural network to solve a more complex environment.
What it does
Our algorithm plays and attempts to maximize its score in Breakout for the Atari 2600.
How we built it
Following several online guides and using open-source neural network code courtesy of Hugging Face, we tuned the hyperparameters and implemented several helper functions including the Q-learning algorithm the neural network is built off of.
Challenges we ran into
The main challenge we ran into was understand Deep Neural Networks and how to use deep Q-learning to accomplish this. Understand how to create frame stacks, alongside with learning what tensorflow keras does.
Accomplishments that we're proud of
Although it certainly isn't optimal, we're proud of learning the workings of and implementing deep Q-learning in a complex environment within such a short period of time. Training the model in such a short period of time was rather difficult too.
What we learned
It turns out that learning and implementing deep Q-learning in 24 hours is quite a lot more difficult than we initially expected. Through completing this project we've learned tons about reinforcement learning and neural networks.
What's next for BREAKOUT!!!
Given more time we would love to fully write our own neural network code and further train the algorithm. We would also like to experiment with different reinforcement learning techniques.
Built With
- arcade-learning-environment
- google-cloud
- gymnasium
- numpy
- python
- tensorflow
Log in or sign up for Devpost to join the conversation.