The goal of this project is to train an agent to control a double-jointed arm to target locations from Unity ML-Agents toolkit Bananas environment.
The environment consists 20 double-jointed arms which get a goal location at every timestep. Every timestep the arm stays within goal bounds agent receives a +1 reward. The goal of the agent is to follow the goal locations at every timestep and collect as many rewards as possible.
The observation space consists of 33 variables corresponding to position, rotation, velocity, and angular velocities of the arm. Each action is a vector with four numbers, corresponding to torque applicable to two joints. Every entry in the action vector should be a number between -1 and 1. The task is complete when agents get an average score of +30 (over 100 consecutive episodes, and over all agents)
-
Download the environment from one of the links below. You need only select the environment that matches your operating system:
- Linux: click here
- Mac OSX: click here
- Windows (32-bit): click here
- Windows (64-bit): click here
(For Windows users) Check out this link if you need help with determining if your computer is running a 32-bit version or 64-bit version of the Windows operating system.
(For AWS) If you'd like to train the agent on AWS (and have not enabled a virtual screen), then please use this link to obtain the environment.
-
Place the file in the root directory of this repository, and unzip (or decompress) the file.
In order to train the agent, open dist_ppo/Continous_Control.ipynb and run all the cells.
In order to run a pretrained agent, run all the cells in the Report.ipynb excpet for the training section.
To open the Report.ipynb use the following command from the root of this repository
jupyter notebook
A webpage will be opened on your browser, click on Report.ipynb, which opens a new page. From here you should be able to run a cell or run everything at once.
Packages necessary for this project.
pip install -r requirements.txt
- [60 Days RL Challenge](https://github.com/andri27-ts/60_Days_RL_Challenge)