View on GitHub

Introduction to Reinforcement Learning

Material for an introduction course to reinforcement learning for compute scientists

Reinforcement Learning: Lecture Material, Simple Python Code Examples and Assignments

License: CC BY-NC-SA 4.0

Under development! Caution, this page is currently incomlete and there may be missing files and mistakes in the provided materials.

This repository contains lecture material, simple Python code examples, and assignments for the course CS 5/73XX Reinforcement Learning taught by Michael Hahsler at the Department of Computer Science at SMU.

The code examples cover several chapters of the textbook

Richard S. Sutton, Andrew G. Barto, Reinforcement Learning: An Introduction, 2nd edition, MIT Press, Cambridge, MA, 2018.

Deep Reinforcement Learning (DRL) is based on the review paper

Vincent François-Lavet, Peter Henderson, Riashat Islam, Marc G. Bellemare and Joelle Pineau, An Introduction to Deep Reinforcement Learning, Foundations and Trends in Machine Learning, 11:3-4, pp 219-354. http://dx.doi.org/10.1561/2200000071, 2018.

Studying the material requires

Table of Contents

Module Book Chapter Lecture Slides Code
1 1: Introduction PDF, PowerPoint Code
2 3: Finite Markov Decision Processes PDF, PowerPoint Code
  Part I: Tabular Methods    
3 4: Dynamic Programming PDF, PowerPoint Code
4 5: Monte Carlo Methods PDF, PowerPoint Code
5 6: Temporal-Difference Learning PDF, PowerPoint Code
- 7: n-step Bootstrapping PDF, PowerPoint -
- 8: Planning and Learning with Tabular Methods PDF, PowerPoint -
  Part II: Approximate Solution Methods    
6 9-10: Prediction and Control using Approximation PDF, PowerPoint Code
7 12: Eligibility Traces PDF, PowerPoint -
9 13: Policy Gradient Methods PDF, PowerPoint -
  Modern Methods    
10 DRL: Deep Reinforcement Learning PDF, PowerPoint Code
11 X: Current Applications - -

License

Introduction to Reinforcement Learning © 2026 Michael Hahsler and others is licensed under CC BY-NC-SA 4.0.