# Unit 1: Introduction to Deep Reinforcement Learning ๐Ÿš€ ![cover](assets/img/thumbnail.png) In this Unit, you'll learn the foundations of Deep Reinforcement Learning. And **youโ€™ll train your first lander agent ๐Ÿš€ to land correctly on the Moon ๐ŸŒ•** using Stable-Baselines3 and share it with the community. LunarLander You'll then be able to **[compare your agentโ€™s results with other classmates thanks to the leaderboard](https://huggingface.co/spaces/huggingface-projects/Deep-Reinforcement-Learning-Leaderboard)** ๐Ÿ”ฅ. This course is **self-paced**, you can start whenever you want. ## Required time โฑ๏ธ The required time for this unit is, approximately: - **2 hours** for the theory - **1 hour** for the hands-on. ## Start this Unit ๐Ÿš€ Here are the steps for this Unit: 1๏ธโƒฃ ๐Ÿ“ **Sign up to the course** , to receive the updates when each Unit is published. 2๏ธโƒฃ **Sign up to our Discord Server**. This is the place where youย **can exchange with the community and with us, create study groups to grow each other and more**ย  ๐Ÿ‘‰๐Ÿปย [https://discord.gg/aYka4Yhff9](https://discord.gg/aYka4Yhff9). Are you new to Discord? Check our **discord 101 to get the best practices** ๐Ÿ‘‰ https://github.com/huggingface/deep-rl-class/blob/main/DISCORD.Md 3๏ธโƒฃ ๐Ÿ‘‹ **Introduce yourself on Discord in #introduce-yourself Discord channelย ๐Ÿค— and check on the left the Reinforcement Learning section.** - In #rl-announcements we give the last information about the course. - #discussions is a place to exchange. - #unity-ml-agents is to exchange about everything related to this library. - #study-groups, to create study groups with your classmates. Discord Channels 4๏ธโƒฃ ๐Ÿ“– **Read An [Introduction to Deep Reinforcement Learning](https://huggingface.co/blog/deep-rl-intro)**, where youโ€™ll learn the foundations of Deep RL. You can also watch the video version attached to the article. ๐Ÿ‘‰ https://huggingface.co/blog/deep-rl-intro 5๏ธโƒฃ ๐Ÿ“ Take a piece of paper and **check your knowledge with this series of questions** โ” ๐Ÿ‘‰ https://github.com/huggingface/deep-rl-class/blob/main/unit1/quiz.md 6๏ธโƒฃ ๐Ÿ‘ฉโ€๐Ÿ’ป Then dive on the hands-on, where **youโ€™ll train your first lander agent ๐Ÿš€ to land correctly on the Moon ๐ŸŒ• using Stable-Baselines3 and share it with the community.** Thanks to a leaderboard, **you'll be able to compare your results with other classmates** and exchange the best practices to improve your agent's scores Who will win the challenge for Unit 1 ๐Ÿ†? ๐Ÿ‘ฉโ€๐Ÿ’ป The hands-on ๐Ÿ‘‰ [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/huggingface/deep-rl-class/blob/main/unit1/unit1.ipynb) ๐Ÿ† The leaderboard ๐Ÿ‘‰ https://huggingface.co/spaces/huggingface-projects/Deep-Reinforcement-Learning-Leaderboard You can work directly **with the colab notebook, which allows you not to have to install everything on your machine (and itโ€™s free)**. The best way to learn **is to try things on your own**. Thatโ€™s why we have a challenges section in the colab where we give you some ideas on how you can go further: using another environment, using another model etc. 7๏ธโƒฃ (Optional) In order to **find the best training parameters you can try this hands-on** made by [Sambit Mukherjee](https://github.com/sambitmukherjee) ๐Ÿ‘‰ https://github.com/huggingface/deep-rl-class/blob/main/unit1/unit1_optuna_guide.ipynb ## Additional readings ๐Ÿ“š - [Reinforcement Learning: An Introduction, Richard Sutton and Andrew G. Barto Chapter 1, 2 and 3](http://incompleteideas.net/book/RLbook2020.pdf) - [Foundations of Deep RL Series, L1 MDPs, Exact Solution Methods, Max-ent RL by Pieter Abbeel](https://youtu.be/2GwBez0D20A) - [Spinning Up RL by OpenAI Part 1: Key concepts of RL](https://spinningup.openai.com/en/latest/spinningup/rl_intro.html) - [Getting Started With OpenAI Gym: The Basic Building Blocks](https://blog.paperspace.com/getting-started-with-openai-gym/) ## How to make the most of this course To make the most of the course, my advice is to: - **Participate in Discord** and join a study group. - **Read multiple times** the theory part and takes some notes. - Donโ€™t just do the colab. When you learn something, try to change the environment, change the parameters and read the libraries' documentation. Have fun ๐Ÿฅณ. - Struggling is **a good thing in learning**. It means that you start to build new skills. Deep RL is a complex topic and it takes time to understand. Try different approaches, use our additional readings, and exchange with classmates on discord. ## This is a course built with you ๐Ÿ‘ท๐Ÿฟโ€โ™€๏ธ We want to improve and update the course iteratively with your feedback. **If you have some, please fill this form** ๐Ÿ‘‰ https://forms.gle/3HgA7bEHwAmmLfwh9 ## Donโ€™t forget to join the Community ๐Ÿ“ข We have a discord server where youย **can exchange with the community and with us, create study groups to grow each other and more**ย  ๐Ÿ‘‰๐Ÿปย [https://discord.gg/aYka4Yhff9](https://discord.gg/aYka4Yhff9). Donโ€™t forget toย **introduce yourself when you sign upย ๐Ÿค—** โ“If you have other questions, [please check our FAQ](https://github.com/huggingface/deep-rl-class#faq) ## Keep learning, stay awesome ๐Ÿค—,