Skip to content

and-buk/Learning-from-Pixels

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Learning from Pixels

Introduction

We will train an agent to navigate (and collect bananas!) in a large, square world.

Trained Agent

A reward of +1 is provided for collecting a yellow banana, and a reward of -1 is provided for collecting a blue banana. Thus, the goal of your agent is to collect as many yellow bananas as possible while avoiding blue bananas.

The state is an 84 x 84 RGB image, corresponding to the agent's first-person view. Given this information, the agent has to learn how to best select actions. Four discrete actions are available, corresponding to:

  • 0 - move forward.
  • 1 - move backward.
  • 2 - turn left.
  • 3 - turn right.

The task is episodic, and in order to solve the environment, your agent must get an average score of +13 over 100 consecutive episodes.

Getting Started

  1. Install packages required to working the code:

    • Python 3.6
    • pip install unityagents Unity Machine Learning Agents (ML-Agents)
    • PyTorch (The code works with both CPU and GPU that is capable of running CUDA)
    • NumPy, Matplotlib, Pandas
  2. Download the environment from one of the links below. You need only select the environment that matches your operating system:

    (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.

  3. Place the file in folder with other repository files, and unzip (or decompress) the file.

Note: The project environment is similar to, but not identical to the Banana Collector environment on the Unity ML-Agents GitHub page.

Instructions

The repository contains four files and one directory:

  • double_dqn_agent.py: DDQN agent with Experience replay
  • model.py: CNN model
  • Navigation_Pixels.ipynb: The code to explore the environment and train an agent
  • checkpoint: Saved trained model weights of the successful agent as a multipart ZIP file
  • Report.md: Description of implementation

Follow the instructions in Navigation_Pixels.ipynb to get started with training an agent.