Book Image

Hands-On Reinforcement Learning for Games

By : Micheal Lanham
Book Image

Hands-On Reinforcement Learning for Games

By: Micheal Lanham

Overview of this book

With the increased presence of AI in the gaming industry, developers are challenged to create highly responsive and adaptive games by integrating artificial intelligence into their projects. This book is your guide to learning how various reinforcement learning techniques and algorithms play an important role in game development with Python. Starting with the basics, this book will help you build a strong foundation in reinforcement learning for game development. Each chapter will assist you in implementing different reinforcement learning techniques, such as Markov decision processes (MDPs), Q-learning, actor-critic methods, SARSA, and deterministic policy gradient algorithms, to build logical self-learning agents. Learning these techniques will enhance your game development skills and add a variety of features to improve your game agent’s productivity. As you advance, you’ll understand how deep reinforcement learning (DRL) techniques can be used to devise strategies to help agents learn from their actions and build engaging games. By the end of this book, you’ll be ready to apply reinforcement learning techniques to build a variety of projects and contribute to open source applications.
Table of Contents (19 chapters)
1
Section 1: Exploring the Environment
7
Section 2: Exploiting the Knowledge
15
Section 3: Reward Yourself

Training a Unity environment with Rainbow

Training an agent to learn a Unity environment is not unlike much of the training we have already done. There are a few slight changes to the way we interact and set up the environment but overall it is much the same, which makes it a further plus for us because now we can go back and train several different agents/algorithms on completely new environments that we can even design. Furthermore, we now can use other DRL frameworks to train agents with Python— outside the ML-Agents agents, that is. We will cover more on using other frameworks in Chapter 12, DRL Frameworks.

In the next exercise, we see how to convert one of our latest and most state-of-the-art samples, Chapter_10_Rainbow.py, and turn it into Chapter_11_Unity_Rainbow.py. Open Chapter_11_Unity_Rainbow.py and follow the next exercise:

  1. We first need to copy the output...