IA par renforcement

Objectifs

À la fin du cours, les étudiants seront capables de :

Plan du cours

Structure du cours

---

Bloc 1 : Introduction générale & bases théoriques (6h)

Objectifs :  
- Donner une culture générale du RL  
- Introduire les concepts clés avec des exemples simples.  
- Familiariser les étudiants avec la formalisation mathématique (MDP, équations de Bellman, Value/Q functions).  

Contenu : 
1. Introduction au RL
   - Applications du RL (robots, jeux, économie, IA).  
   - Place du RL dans le Machine Learning.  
2. Bases théoriques
   - MDP (Markov Decision Process).  
   - Formalisation des états, actions, récompenses, transitions.  
   - Value iteration et programmation dynamique.  
3. Algorithmes de base
   - Value iteration et la fonction de valeur  
   - Présentation du Q-learning tabulaire.  
4. Panorama des approches modernes  
   - RL avec ou sans modèle.  
   - Approches V/Q vs. policy-based.  
   - On-policy/off-policy.  
   - Aperçu du DQN (Deep Q-Learning).  

---

Bloc 2 : Approfondissements des méthodes et algorithmes (6h)  

Objectifs :  
- Introduire des méthodes avancées
- Lier les méthodes théoriques à des cas concrets (ex. robotique).  
- Permettre aux étudiants de découvrir des algorithmes comme PPO, SAC et Actor-Critic.  

Contenu proposé :  
1. Approches policy-based et Actor-Critic  
   - Policy Gradient Methods(PGM) : concepts et intuition.  
   - Algorithme PPO (Proximal Policy Optimization) : structure, fonctionnement, avantages.  
   - Actor-Critic : séparation politique/valeur.  
2. Méthodes off-policy avancées 
   - SAC (Soft Actor-Critic) : RL robuste et échantillonnage efficace.  
   - Comparaison PPO/SAC dans des environnements variés.  
3. Choix d’algorithmes et implémentation  
   - Comment choisir une méthode selon le problème ?  
   - Présentation des frameworks : Gymnasium, Stable-Baselines3.  
4. Applications en robotique (si besoin)  
   - Exemples concrets de PPO/SAC sur des environnements de robots.  

---

Bloc 3 : Mise en pratique – TP et projets (12h)  

Objectifs :
- Développer des compétences pratiques en programmation RL.  
- Apprendre à adapter des méthodes à des nouveaux environnements  
- Encourager la réflexion critique face à l'abondance d'exemples/code existants.

Description des TP

1. TP 1 : Q-learning tabulaire sur Gymnasium (3h)  
   - Exemple classique : résolution de GridWorld.  
   - Étendre à un environnement avec des états continus simplifiés.  

2. TP 2 : DQN – Application aux environnements non triviaux(3h)  
   - Implémentation d’un DQN sur un environnement Gymnasium "customisé".  
   - Exemple : résolution d’un jeu comme CartPole puis adaptation à un problème maison.  

3. TP 3 : Exploration de PPO/SAC pour la robotique (3h)  
   - Exploration guidée d’un projet PPO/SAC sur un bras robotisé ou un robot mobile.  
   - Environnement via PyBullet ou autres simulateurs.  

4. TP 4 : Résolution créative d’un problème RL (3h)  
   - Projet libre par groupes :  
     - Les étudiants choisissent un nouveau problème (ex. Jeux vidéos, etc.).  
     - Objectif : définir l’environnement, choisir un algorithme, expérimenter et analyser.  

Connaissances requises

Cours d'Apprentissage Automatique de FISA2

Cours de Deep Learning de FISA3

RSE (Responsabilité Sociale et Environnementale)

Bibliographie