Le livre référence pour ce cours est
Reinforcement Learning par Richard S. Sutton et Andrew G. Barto (MIT Press) seconde édition, 2018.
Déroulement du cours et transparents
- (séances 1,2,3) présentation du problème d'apprentissage par renforcement et processus décisionnel markovien (séances 1-3)
- (séances 4,5,6) résolution avec des modèles tabulaires
- (séances 7,8) résolution avec des modèles approximés
Séance 1: Introduction et problème des bandits manchots
(slides)
- Introduction: apprentissage par renforcement
- Le problème des k-bandits manchots ou comment jouer aux machines à sous
- ε-greedy
- initialisation optimiste
- UCB
- bandit gradient
Bonus: notes sur le gradient bandits (en suivant Sutton et Barto pp 38-40)
Code: implémentez le protocole de tests décrit dans les transparents (10-bandit problem) et testez les algorithmes ci-dessus. Retrouvez les graphes similaires.
Code Bonus:Vous pouvez maintenant tester quelques cas supplémentaires
- Peut-on choisir un meilleur ε que 0.1 pour ε-greedy?
- Que se passe-t-il si l'initialisation n'est pas assez optimiste ou trop optimiste?
- Comment varie la courbe de performance selon la valeur du paramètre
-
c
de UCB?
- α pour la montée de gradient.
Séance 2: Processus décisionnels de Markov
(slides)
- Chaines de Markov avec récompenses
- Processus décisionnels de Markov
Bonus:
quelques démonstrations sur les MDP
Séance 3: Processus décisionnels de Markov et résolution
- optimalité
- résolution avec la programmation dynamique
CodeImplémentez les algorithmes Itération sur les valeurs et Itération sur les politiques sur l'exemple du cours
(
notebook jupyter à télécharger)
Séance 4: Résoudre un PDM inconnu avec les méthodes de Monte Carlo
(slides)
- Apprendre les fonctions de valeurs d'une politique fixéee
- Apprendre une politique optimale
- méthodes "on policy" (on utilise une politique pour géné les données, et on améliore cette politique)
- méthodes "off policy" (on utilise une politique pour géné les données, et on calcule "à" une politique optimale)
Code: Implémentez un algorithme de Monte Carlo pour jouer à black jack (
notebook jupyter à télécharger)
Séance 5: Résoudre un PDM inconnu avec les méthodes de différences temporelles
(slides)
- Apprendre les fonctions de valeurs d'une politique fixéee
- Apprendre une politique optimale
- on policy: algorithme sarsa
- off policy: algorithme Q-learning
Code: Implémentez SARSA et Q-learning sur Frozen Lake (
notebook jupyter à télécharger)
- Approximation de la fonction de valeur v quand le nombre d'etats est trop grand
- Application avec le cas linéaire
- Semi gradient SARSA et DeepQ network
- Utilisation du mini batch