This repository contains python code that implements deep reinforcement learning to solve the problem of controlling a double jointed arm and keeping the hand in a specified three dimensional space.
The environment consists of 20 arms to control and keep in different target locations. For each arm, the environment keeps track of 33 variables provide data for:
- Position
- Velocity
- Rotation
- Angular Velocity
Additionally, the action space for each arm consists of 4 real numbers between 1 and -1 that specifies the torque.
Follow the steps below to setup an environment to run the project.
Start by creating a new environment with python 3.6 (Note: python 3.6 is necessary for tensorflow 1.7.1 and the unity environment will not work without this version.)
conda create --name drlnd python=3.6
source activate drlnd
Next, clone the deep-reinforcement-learning repository to install the unity agent dependency.
git clone https://github.com/udacity/deep-reinforcement-learning.git
cd deep-reinforcement-learning/python
pip install .
Then, use pip to install the requirements detailed in the requirements text file.
pip install -r requirments.txt
Finally, source the conda environment with
conda activate drlnd
The agents can be trained by executing train_agents.py with the command:
python train_agents.py
Running train_agents.py will start up the unity environment and begin training the model.