Skip to content

Deep Reinforcement Learning implementation in Keras of an AI controlling the popular Flappy Bird videogame, using Asynchronous Advantage Actor Critic (A3C)

License

Notifications You must be signed in to change notification settings

fedebotu/a3c-flappy-bird

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A3C Flappy Bird

Deep Reinforcement Learning implementation in Keras of an AI controlling the popular Flappy Bird videogame, using Asynchronous Advantage Actor Critic (A3C).

By Federico Berto: Bachelor's degree thesis for Joint double degree for Tongji University and University of Bologna. For more details, please contact me at: [email protected]

Original implementation: For more information about the project details, see this blog post associated with this project.

See LICENSE for further details Copyright (c) 2019 Federico Berto based on: Copyright (c) 2017 Shalabh Singh

Network Architecture

Installation of Dependencies

  • Python 3.5
  • Keras 2.0
  • pygame
  • scikit-image

How to Run?

Clone the repository or download it. To test the pretrained model, run the "test.py" file. To retrain the model from scratch, run the "train_network.py" file and the trained models at different stages will be saved in "saved_models" folder.

Disclaimer

This work is based on the following repos and blogs-

  1. https://github.com/yenchenlin/DeepLearningFlappyBird
  2. https://github.com/jaara/AI-blog
  3. http://karpathy.github.io/2016/05/31/rl/

Python Files Explanation:

  • play.py --> press SPACE to flap the bird
  • test.py --> test one network model
  • train_network.py --> train a network

Don't esitate to contact me for ideas, pull requests and more :)

About

Deep Reinforcement Learning implementation in Keras of an AI controlling the popular Flappy Bird videogame, using Asynchronous Advantage Actor Critic (A3C)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages