
Explore how machine learning enhances game design, with a focus on reinforcement learning, and learn to set up Python, PyTorch, Unity, and ML-Agents for hands-on development.
Discover how machine learning enhances game design by letting computers learn from experience, improving NPC behavior, and leveraging AI, computer vision, classification, and reinforcement learning in games.
Explore machine learning basics, focusing on reinforcement learning, with Python, Unity, and PyTorch; apply concepts from regression, Q-learning, and convolutional neural networks in game design.
Install and configure python, unity hub and editor, pytorch, ml-agents toolkit, and code editors; test installations with import torch and a simple hello machine learning program.
Explore what machine learning is and how supervised learning uses linear regression, multiple linear regression, and polynomial regression to predict a monster's challenge rating in Dungeons and Dragons.
Learn how machine learning uses data and training to build models. Focus on supervised learning, data labeling, and predicting outcomes through classification and regression, with applications in game design.
Explore linear regression, a method for predicting a single dependent value from a single independent value, and work with a simple output function.
Learn to implement linear regression in python, loading data with pandas, training with a learning rate, plotting results with matplotlib, and evaluating on a train-test split.
Learn multiple linear regression with several independent variables to predict miles per gallon, use feature elimination to improve accuracy, and apply dummy variables for categorical data.
Apply multiple linear regression in Python to predict monster challenge rating using hit points and categorical type, encoding with dummy variables and training with stochastic gradient descent.
Explore polynomial regression as a curve-based alternative to linear regression and learn forward and backward degree selection, gradient descent optimization, and scikit-learn implementation.
Develop a polynomial regression model in Python with scikit-learn, using degree three polynomial features, fitting a linear model, and evaluating with mean squared error on prepared data.
Identify that data is not all useful; in Dungeons and Dragons, monster hit points predict challenge rating, and apply linear, multiple linear, and polynomial regression with scikit learn, pandas, matplot.
Learn reinforcement learning fundamentals by training an agent to maximize scores in a Unity game using Q-learning, with actions such as do nothing, left, or right, and state-action-reward concepts.
Learn Q-learning, a reinforcement learning algorithm that updates a Q-value table from rewards and the maximum future Q value with a discount factor, and balance exploration and exploitation.
Implement a Q-learning workflow in Python and Unity, using ML-Agents to train a blue box agent to maximize reward via discrete actions and an epsilon-greedy policy.
State action reward state action, or sarsa, is a variation of q-learning that uses the next state and action, making it safer. A cliff with -100 reward illustrates updates.
Implement the SARSA algorithm in Python and Unity, training a policy by updating q-values with the next state and action, and compare with Q-learning while testing and inferring in Unity.
Explore reinforcement learning, including q-learning and SARSA, and how agents learn from state-action-reward in discrete environments. Evaluate when to use q-learning or SARSA, and balance greedy and epsilon-greedy exploration.
Explore evolutionary algorithms, including population, fitness, selection, crossover, and mutation, and train neural network–based agents in Unity to balance the ball on their heads.
Train an evolutionary algorithm for 12 agents in a Unity ML-Agents environment using Python, DEAP, and a neural-net brain, evolving continuous actions through selection, crossover, and mutation.
Explore evolutionary algorithms inspired by natural evolution, using individuals, selection, crossover, and mutation to evolve neural networks and behaviors in game design, with distributed Python tools guiding retraining across episodes.
In this course you will be introduced to the basics of Machine Learning through game design in Unity and Python. First you will be introduced to the very basics of ML and python, you will learn such simple ML concepts such as supervised learning, regression and gradient descent. After that you will get acquainted with reinforcement learning and will try to understand and apply a combination of Reinforcement Learning, Deep Neural Networks and other algorithms in the Unity environment to help your agent accomplish complex and dynamic tasks. Lastly you will learn how to build dynamic full featured RL environments and agents for you to train later in your games. You will not only be able to create your own RL algorithms from scratch (such as Q-learning, SARSA and PPO), but also customize them to fit the needs of your environment and train your agents in Unity. You will gain experience with widely used tools and libraries in the industry of ML, such as: Unity3D, Pytorch, mlagents-learn, scikit-learn and more. We hope that this course will help you to better understand and prepare for your journey of developing truly intelligent agents and characters in your own games. Let's get started!