Introduction

Let's begin by answering the question of what is deep reinforcement learning exactly? RL is ultimately about building code that can learn to perform complex tasks by itself, and deep RL refers to approaches where the knowledge is represented with a deep neural network. For example, Alpha Zero learned for itself how to play without being told any rules of the game. It plays a lot of games and based wins and losses learns the best strategy. The trial and error approach in RL can also be extended to other domains. For instance, teach a robot to walk or train a chatbot how to have better conversations.

Unity ML-Agents

All of the projects use the Unity Machine Learning Agents (ML-Agents) toolkit, which you can learn more about by watching this video.

Unity ML-Agents is a toolkit for training intelligent agents in rich and realistic environments.

drawing

It is a flexible and intuitive framework which enables:

Reference Guide

You are encouraged to download this sheet, which contains most of the notation and algorithms that we will use in the first part of this course.

Another useful notation guide can be found in the pages immediately preceding Chapter 1 of the textbook.

OpenAI Gym

In this course, we’ll make extensive use of OpenAI Gym, an open-source toolkit created by OpenAI for developing and comparing reinforcement learning (RL) algorithms. Using this toolkit, you will teach your own agents to accomplish a variety of complex tasks.

We'll use it to build practical, hands-on skills with many of the algorithms that we'll learn about during the nanodegree. Then, once you build your confidence with these environments, you'll be more than ready to tackle the projects!

Take a Look

You can take a look at some of the environments that OpenAI Gym offers from the link here.

drawing

If you'd like to learn more about OpenAI Gym, please peruse the GitHub repository. Check out this blog post to read more about how OpenAI Gym is used to accelerate reinforcement learning (RL) research.

Learning by Doing

In the first part of the nanodegree, we’ll be using many of the environments that are available as part of this toolkit:

One of the really cool things about OpenAI Gym is that you can watch your performance. So, your agent might start off just behaving randomly, but as it learns from interaction, you’ll be able to see it choose actions in a much more calculated, intelligent way.

drawing

Source the image above

OpenAI Gym Installation

If you'd like to install OpenAI Gym on your machine, you are encouraged to follow the instructions in the GitHub repository.

GitHub Repository

You can find all of the coding exercises from the lessons in this GitHub repository.

To clone the repository:

git clone https://github.com/udacity/deep-reinforcement-learning.git

Here is a demonstration of all the complex projects you'll accomplish by the end of this course.

drawing

Student Resources

You can start with the student-curated list of resources at this link.

Books to Read

We believe that you learn best when you are exposed to multiple perspectives on the same idea. As such, we recommend checking out the books below to get an added perspective on Deep Reinforcement Learning.