At some point, we need to move beyond building and training agent algorithms and explore building our own environments. Building your own environments will also give you more experience in making good reward functions. We have virtually omitted this important question in Reinforcement Learning (RL) and Deep Reinforcement Learning (DRL) and that is what makes a good reward function.
In this chapter, we will look to answer the question of what makes a good reward function or what a reward function is. We will talk about reward functions by building new environments with the Unity game engine. We will start by installing and setting up Unity ML-Agents, an advanced DRL kit for building agents and environments. From there, we will look at how to build one of the standard Unity demo environments for our use with our PyTorch models. Conveniently, this leads us...