Hands-on Neuroevolution with Python
- Length: 321 pages
- Edition: 1
- Language: English
- Publisher: Packt Publishing
- Publication Date: 2020-01-09
- ISBN-10: 183882491X
- ISBN-13: 9781838824914
Increase the performance of various neural network architectures using NEAT, HyperNEAT, ES-HyperNEAT, Novelty Search, SAFE, and Deep Neuroevolution.
Key Features
- Implement neuroevolution algorithms to improve performance of various neural network architectures
- Get well-versed with evolutionary algorithms and neuroevolution methods using realworld examples
- A perfect blend of essential concepts and how they are used in areas of games, robotics, and simulations
Book Description
Neuroevolution is a form of artificial intelligence learning method that uses evolutionary algorithms to ease the solving of complex tasks such as games, robotics, simulation of natural processes, etc. This book serves as a practical guide on how to develop the necessary mindset and skills to apply neuroevolution-based algorithms to solve practical, real-world problems.
You will learn the key concepts and methods of neuroevolution by writing code with Python programming language. You will get hands-on experience with popular Python libraries and will cover examples of classical reinforcement learning, path planning for autonomous agents, creation of agents to autonomously play Atari games, and other real-world examples. You will learn to solve common and not-so-common challenges in natural computing using neuroevolution-based algorithms. You will learn to apply neuroevolution strategies to existing neural network designs to improve training and inference performance. You will get a clear understanding of the topology of the neural network and how neuroevolution allows you to evolve complex networks, starting with the very simple ones.
By the end of this book, you will not only have studied existing neuroevolution-based algorithms but also built the practical skills necessary to apply it for research and work assignments.
What you will learn
- Learn about most prominent neuroevolution algorithms – NEAT, HyperNEAT, and the ESHyperNEAT
- Explore how to implement neuroevolution-based algorithms in Python
- Understand advanced visualization tools to examine graphs of evolved neural networks
- Learn how to examine experiment results and analyze the performance of algorithms
- Explore neuroevolution techniques to improve the performance of existing methods
- Discover how to search for solutions without directly aiming at the objective
- Apply deep neuroevolution to evolve agents to play Atari games
Who This Book Is For
This book is for machine learning practitioners, deep learning researchers, and AI enthusiasts who are looking to implement neuroevolution algorithms from scratch. You will learn how to apply these algorithms to various sets of real-world problems. Learn how neuroevolution methods can optimize the process of training of artificial neural networks. You will become familiar with the core concepts of neuroevolution and get the necessary practical skills to use it in your work and experiments. Working knowledge of Python and deep learning and neural network basics are mandatory.