What you'll 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 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.
What if you could build a character that could learn while it played? Think about the types of gameplay 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 learningtechniques of genetic algorithms and neural networksusing her internationally acclaimed teaching style andknowledge from a Ph.D in game character AI andover 25 years experienceworking with games and computergraphics. In addition she'swritten two award winning books on games AI and two others best sellers on Unity game development.Throughout the courseyou will follow along with hands-on workshops designed to teach youabout the fundamental machine learningtechniques, 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
Tensorflow
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 be ready to tackle Unity's experimentalML-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-equipped 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 students are saying about this course:
Absolutely the best beginner to Advanced course for Neural Networks/ Machine Learning if you are a game developer that uses C# and Unity. BAR NONE x Infinity.
A perfect course with great math examples and demonstration of the TensorFlow power inside Unity. After this course, you will get the strong basic background in the Machine Learning.
The instructor is very engaging and knowledgeable. I started learning from the first lesson and it never stopped. If you are interested in Machine Learning , take this course.