Giter Site home page Giter Site logo

war3gu / dqn-atari Goto Github PK

View Code? Open in Web Editor NEW

This project forked from gtoubassi/dqn-atari

0.0 2.0 0.0 102 KB

A TensorFlow based implementation of the DeepMind Atari playing "Deep Q Learning" agent that works reasonably well

Python 98.23% Shell 1.77%

dqn-atari's Introduction

DQN Atari

Click to play video

This repo represents my attempt to reproduce the DeepMind Atari playing agent described in the recent Nature paper.

While the DeepMind implementation is built in lua with torch7, this implementation uses TensorFlow. Like DeepMind, it also depends on the Arcade Learning Environment (technically I believe DeepMind uses their Xitari fork of ALE).

Results

I have been focused on attempting to match DeepMind's performance on Space Invaders, which in their publication is 1976+/-800, though I do not know exactly how they compute those results. For my results I compute average/stdev over the final 20 evals of the training regime. I did a run with the DeepMind code (results here) and by this measure saw results of 1428+/189. My current results are far short at 1139+/-138 (random agent scores ~150). Thus far I have not found anyone that has reproduced the DeepMind results using the approach described in the Nature paper. If you've done it, particularly with TensorFlow, let me know!

I have also tried breakout and got a score of 284+/-78 but that was an older version with the wrong target network update frequency. (DeepMind reported 400+/-30 using their eval method).

I have also experimented with compressing experience replay to have larger capacity than 1M. Both breakout and space invaders show ~10% improvement with 4M and 3M respectively.

A publicly viewable google spreadsheet has results for various experiments I have run.

Running

  1. Get Python and Tensorflow running, preferably on a GPU (see notes on AWS setup).

  2. Install the arcade learning environment (see wiki)

  3. Install dqn-atari specific dependencies, currently just sudo pip install blosc

  4. Download a game rom, and name it properly like space_invaders.bin (all lower case ending in bin -- the names must match for ALE).

  5. Get the repo:

     git clone https://github.com/gtoubassi/dqn-atari.git
    
  6. Run it! The default parameters attempt to mimic the Nature paper configuration:

     cd dqn-atari
     python ./play_atari.py ~/space_invaders.bin | tee train.log
    
  7. Periodically check progress

     ./logstats.sh train.log
    

References

The following were very helpful:

dqn-atari's People

Contributors

gtoubassi avatar ratajczak avatar

Watchers

James Cloos avatar GuYuanKun avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.