This repo contains my solution to the navigation project in Udacity's Nano degree for deep reinforcement learning. The task was to code and train an agent to navigate the banana world of Unity-ML and collect as many yellow bananas as posible while avoiding blue bananas.
The environment is a planar environment where the agent can move in 4 directions and the objective is to collect yellow bananas
The state space is made up of 37 dimensions describing ray-based perception of objects forward of the agent in addition tio the agents velocity.
The available actions are:
0 - walk forward
1 - walk backward
2 - turn left
3 - turn right
Rewards are given as +1 for collecting a yellow banana and -1 for collecting a blue banana. An average reward of at least 13 over 100 epsiodes must be obtained for the task to be considered solved.
To run the code in this repo
Get the environment here:
Linux
Windows (32-bit)
Windows (64-bit)
MacOS
run install.sh to install packages
To train an agent, use the Navigation.ipynb notebook
Use full path file reference in the notebook for the correct environment.
ex: env = UnityEnvironment(file_name="Banana_Windows_x86_64/Banana.exe")
run all cells
Parameters of the neural net will be saved to checkpoint.pth when requried reward is achevied