
Explore the fundamentals of reinforcement learning, contrast it with supervised learning, and introduce the action, reward, environment, and agent framework, including states, gym environment, and the policy, value, and model.
Contrast reinforcement learning with supervised learning by highlighting online learning signals and delayed, sparse rewards. Show how RL uses dynamic, action-dependent data and credit assignment, unlike static IID data.
Explore the environment model, including the state transition model, and reward model, and how stochastic dynamics and expectation shape the value function and cumulative reward.
Explore the basics of Markov decision processes, from Markov chains to Markov reward processes, and evaluate policies with the value function using dynamic programming for control.
Explore planning with dynamic programming in reinforcement learning, from exhaustive tree search and look-ahead planning to caching solutions and Bellman equations.
Monte Carlo sampling estimates value functions in model-free prediction by averaging returns from trajectories, using first-visit or every-visit counts across states. It overcomes the need for an explicit environment model.
Explore how TD lambda unifies one-step td and monte carlo by weighting n-step returns with lambda, enabling a spectrum between td zero and full monte carlo.
Apply td model-free methods to control using one-step returns and q-value updates. Combine with epsilon-greedy policy, sarsa, and policy iteration, referencing q(s,a) and td targets.
Explore on-policy versus off-policy learning in model-free reinforcement learning, where a behavior policy acts while a separate target policy learns, enabling learning from human actions and safer exploration.
Q-learning is the off-policy variant of Sirsa, using an epsilon-greedy behavior policy and a greedy target policy derived from the q-function, updating by max over actions.
Transform high-dimensional unstructured inputs into low-dimensional feature embeddings with deep neural networks, and use an encoder-decoder design and gradient-based optimization to close the semantic gap and produce accurate outputs.
Train a value function approximation with a neural network, using gradient descent and mean squared error, from a simple linear Q function to td and Monte Carlo targets for prediction.
Explore deep Q networks (DQN) on Atari games with high dimensional color frames and discrete actions. Use Keras-RL and TF-Agents with experience replay and fixed Q targets.
Explore actor-critic methods in deep reinforcement learning, combining policy gradients with a critic that estimates q values via td learning, updating theta and w parameters for improved rewards.
Explore the A2C algorithm, introducing an advantage term based on the state value function baseline and apply temporal difference methods to update policy gradients.
Explore trusted region policy optimization, which uses kl divergence to constrain policy updates and stabilize policy gradient methods, including actor-critic algorithms, with proximal policy approximation next.
Hello and welcome to our course; Reinforcement Learning.
Reinforcement Learning is a very exciting and important field of Machine Learning and AI. Some call it the crown jewel of AI.
In this course, we will cover all the aspects related to Reinforcement Learning or RL. We will start by defining the RL problem, and compare it to the Supervised Learning problem, and discover the areas of applications where RL can excel. This includes the problem formulation, starting from the very basics to the advanced usage of Deep Learning, leading to the era of Deep Reinforcement Learning.
In our journey, we will cover, as usual, both the theoretical and practical aspects, where we will learn how to implement the RL algorithms and apply them to the famous problems using libraries like OpenAI Gym, Keras-RL, TensorFlow Agents or TF-Agents and Stable Baselines.
The course is divided into 6 main sections:
1- We start with an introduction to the RL problem definition, mainly comparing it to the Supervised learning problem, and discovering the application domains and the main constituents of an RL problem. We describe here the famous OpenAI Gym environments, which will be our playground when it comes to practical implementation of the algorithms that we learn about.
2- In the second part we discuss the main formulation of an RL problem as a Markov Decision Process or MDP, with simple solution to the most basic problems using Dynamic Programming.
3- After being armed with an understanding of MDP, we move on to explore the solution space of the MDP problem, and what the different solutions beyond DP, which includes model-based and model-free solutions. We will focus in this part on model-free solutions, and defer model-based solutions to the last part. In this part, we describe the Monte-Carlo and Temporal-Difference sampling based methods, including the famous and important Q-learning algorithm, and SARSA. We will describe the practical usage and implementation of Q-learning and SARSA on control tabular maze problems from OpenAI Gym environments.
4- To move beyond simple tabular problems, we will need to learn about function approximation in RL, which leads to the mainstream RL methods today using Deep Learning, or Deep Reinforcement Learning (DRL). We will describe here the breakthrough algorithm of DeepMind that solved the Atari games and AlphaGO, which is Deep Q-Networks or DQN. We also discuss how we can solve Atari games problems using DQN in practice using Keras-RL and TF-Agents.
5- In the fifth part, we move to Advanced DRL algorithms, mainly under a family called Policy based methods. We discuss here Policy Gradients, DDPG, Actor-Critic, A2C, A3C, TRPO and PPO methods. We also discuss the important Stable Baseline library to implement all those algorithms on different environments in OpenAI Gym, like Atari and others.
6- Finally, we explore the model-based family of RL methods, and importantly, differentiating model-based RL from planning, and exploring the whole spectrum of RL methods.
Hopefully, you enjoy this course, and find it useful.