11 Evolutionary learning with NEAT

 

This chapter covers

  • Introducing to reinforcement learning
  • Exploring complex problems from the OpenAI Gym
  • Using NEAT as an agent to solve reinforcement learning problems
  • Solving Gym’s lunar lander problem with a NEAT agent
  • Solving Gym’s lunar lander problem with a deep Q-network

In the last chapter, we explored NeuroEvolution of Augmenting Topologies (NEAT) to solve common problems we explored in previous chapters. In this chapter, we look at the evolution of learning itself. First, we use NEAT to develop an evolving agent that can solve problems typically associated with RL. Then, we look at more difficult RL problems and provide a NEAT solution for evolutionary learning. Finally, we finish the chapter by looking at how our understanding of learning itself needs to evolve, using a mental model called instinctual learning.

11.1 Introducing reinforcement learning

Reinforcement learning (RL) is a form of learning based on animal behavior and psychology that attempts to replicate how organisms learn through rewards. If you have ever trained a pet to do a trick using some form of reward, like a treat or praise, then you understand the premise. Many believe the basis for understanding high-level conscience and how we learn is modeled in RL.

11.1.1 Q-learning agent on the frozen lake

11.1.2 Learning exercises

11.2 Exploring complex problems from the OpenAI Gym

11.2.1 Learning exercises

11.3 Solving reinforcement learning problems with NEAT

11.3.1 Learning exercises

11.4 Solving Gym’s lunar lander problem with NEAT agents

11.4.1 Learning exercises

11.5 Solving Gym’s lunar lander problem with a deep Q-network

Summary