English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 12 Hours | 1.40 GB
eLearning | Skill level: All Levels
Advanced games AI with genetic algorithms, neural networks & Q-learning in C# and Tensorflow for Unity
What if you could build a character that could learn while it played? Think about the types of game play you could develop where the enemies started to outsmart the player. This is what machine learning in games is all about. In this course we will discover the fascinating world of artificial intelligence beyond the simple stuff and examine the increasingly popular domain of machines that learn to think for themselves.
In this course, Penny introduces the popular machine learning techniques of genetic algorithms and neural networks using her internationally acclaimed teaching style and knowledge from a Ph.D in game character AI and over 25 years experience working with games and computer graphics. In addition she’s written two award winning books on games AI and two others best sellers on Unity game development. Through-out the course you will follow along with hands-on workshops designed to teach you about the fundamental machine learning techniques distilling the mathematics in a way that the topic becomes accessible to the most noob of novices.
Learn how to program and work with:
- genetic algorithms;
- neural networks;
- human player captured training sets;
- reinforcement learning;
- Unity’s ML-Agent plugin; and,
- Contents and Overview
The course starts with a thorough examination of genetic algorithms that will ease you into one of the simplest machine learning techniques that is capable of extraordinary learning. You’ll develop an agent that learns to camouflage, a flappy bird inspired application in which the birds learn to make it through a maze and environment sensing bots that learn to stay on a platform.
Following this you’ll dive right into creating your very own neural network in C# from scratch. With this basic neural network you will find out how to train behaviour, capture and use human player data to train an agent and teach a bot to drive. In the same section you’ll have the Q-learning algorithm explained before integrating it into your own applications.
By this stage you’ll feel confident with the terminology and techniques used throughout the deep learning community and ready to tackle Unity’s experimental ML-Agents. Together with Tensorflow you’ll be throwing agents in the deep end and reinforcing their knowledge to stay alive in a variety of game environment scenarios.
By the end of the course you’ll have a well equiped toolset of basic and solid machine learning algorithms and applications that will see you able to decipher the latest research publications and integrate the latest developments into your work while keeping abreast of Unity’s ML-Agents as they evolve from experimental to production release.
What Will I Learn?
- Build a genetic algorithm from scratch in C#.
- Build a neural network from scratch in C#.
- Setup and explore the Unity ML-Agents plugin.
- Setup and use Tensorflow to train game characters.
- Apply their newfound knowledge of machine learning to integrate contemporary research ideas in the field into their own projects.
- Distill the mathematics and statistic behind machine learning to working program code.
- Use a Proximal Policy Optimisation to train a neural network.
2 What is Learning_
3 How to Study This Course
5 DNA Inspired Data Structures
6 GA Errata – A Note from Penny
7 Camouflage Training with Genetic Algorithms Part 1
8 Camouflage Training with Genetic Algorithms Part 2
9 Camouflage Challenge
10 Coding Movement with Genes Part 1
11 Coding Movement with Genes Part 2
12 Distance Challenge
13 Moving GAs with Senses Part 1
14 Moving GAs with Senses Part 2
15 Moving GAs with Senses Part 3
16 Maze Walking Challenge
17 Maze Walking Challenge Solution Part 2
18 Not So Flappy Birds Part 1
19 Not So Flappy Birds Part 2
20 Extra Readings
Perceptrons_ The making of a Neural Network
21 The Perceptron
23 Programming and Training a Perceptron
24 Exercise 1
25 Exercise 2
26 Perceptron Classification
27 Perceptron Learning from Experience
28 Saving & Loading Perceptron Values
Artificial Neural Networks
29 Introduction to Neural Networks
30 Programming An Artificial Neural Network Part 1
31 Programming An Artificial Neural Network Part 2
32 Programming An Artificial Neural Network Part 3
33 ANN FAQs
34 Working with Activation Functions
36 Extra Readings
Neural Networks in Practice
37 Developing a Neural Network that Plays Pong Part 1
38 Developing a Neural Network that Plays Pong Part 2
39 Developing a Neural Network that Plays Pong Part 3
41 Gathering Training Data from the Player Part 1
42 Gathering Training Data from the Player Part 2