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

Exercises

As we progress through this book, the exercises at the end of each chapter will be more directed toward providing you with agent training experience. Training RL agents not only requires a fair amount of patience but also intuition on how to spot whether something is wrong or right. That only comes with training experience, so use the following exercises to learn that:

  1. Open example Chapter_4_2.py and change the gridSize variable to see what effect this has on convergence.
  2. Open example Chapter_4_2.py and tune the hyperparameters for alpha and gamma. Try to find the optimum values for both. This will require you to run the example multiple times.
  3. Open example Chapter_4_2.py and change the number of episodes, up or down. See what effect a large number of episodes, such as 100,000 or 1,000,000, has on training.
  4. Tune the learning_rate and gamma hyperparameters in example...