The purpose of this project is to develop artificial intelligence that can learn to play Breakout through reinforcement learning and to use that AI to explore how modern advances in artificial neural networks and deep learning may change what is considered 'thinking' in a computer.
- TensorFlow
- NumPy
- Matplotlib
- tf_agents library
- OpenAI Gym
- The environment is created using OpenAI Gym's Breakout-v4 and AtariPreprocessing is used to preprocess the data.
- The tf_agents library is used to create the Deep Q-Network (DQN) and the DqnAgent that learns to play the game.
- The DQN is composed of three convolutional layers and a fully connected layer.
- The agent is trained using reinforcement learning with a replay buffer and target network to improve the stability of the learning process.
- The trained AI is used to explore how modern advances in artificial neural networks and deep learning may change what is considered 'thinking' in a computer.
Contributions and ideas are welcome! If you would like to contribute, please submit a pull request or contact me directly.
Reza Tabriz - @linkedin - [email protected]