iamsile / attentive-multi-task-deep-reinforcement-learning

Implementation of Attentive Multi Task Deep Reinforcement Learning Architecture in Tensorflow

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Attentive Multi Task Deep Reinforcement Learning

The code contains an implementation and environments of Attentive Multitask Deep Reinforcement Learning (Bräm et al.). It uses the A3C algorithm based on the universe-starter-agent.

Dependencies

Getting Started

conda create --name universe-starter-agent python=3.5
source activate universe-starter-agent

brew install tmux htop cmake golang libjpeg-turbo      # On Linux use sudo apt-get install -y tmux htop cmake golang libjpeg-dev

pip install "gym[atari]"
pip install universe
pip install six
pip install tensorflow==1.5.0
conda install -y -c https://conda.binstar.org/menpo opencv3
conda install -y numpy
conda install -y scipy

pip install -e /path/to/environments/

Add the following to your .bashrc so that you'll have the correct environment when the train.py script spawns new bash shells source activate universe-starter-agent

Grid Worlds

python train.py --env-id grid-worlds-v1,grid-worlds-v2 --log-dir /tmp/grid-worlds

The command above will train an agent on the grid-worlds-v1 and grid-worlds-v2 tasks.

Once you start the training process, it will create a tmux session with a window for each of all processes started. You can connect to them by typing tmux a in the console. Once in the tmux session, you can see all your windows with ctrl-b w. To switch to window number 0, type: ctrl-b 0. Look up tmux documentation for more commands.

To access TensorBoard to see various monitoring metrics of the agent, open http://localhost:12345/ in a browser.

You can stop the experiment with tmux kill-session command.

About

Implementation of Attentive Multi Task Deep Reinforcement Learning Architecture in Tensorflow

License:MIT License


Languages

Language:Python 100.0%