![Page 1: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/1.jpg)
IFT 615 – Intelligence artificielle
Apprentissage par renforcement
Froduald KabanzaDépartement d’informatique
Université de Sherbrookeplaniart.usherbrooke.ca/kabanza/cours/ift615
![Page 2: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/2.jpg)
Sujets couverts
● Apprentissage automatique● Apprentissage par renforcement passif
méthode par estimation directe méthode par programmation dynamique adaptative (PDA) méthode par différence temporelle (TD)
● Apprentissage par renforcement actif méthode PDA active méthode TD active méthode Q-learning
IFT 615 Froduald Kabanza 2
![Page 3: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/3.jpg)
3
APPRENTISSAGE AUTOMATIQUE
IFT 615 Froduald Kabanza
![Page 4: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/4.jpg)
Apprentissage dans un agent
● Un agent apprend s’il améliore sa performance sur des tâches futures avec l’expérience
● Pourquoi programmer des programmes qui apprennent: il est trop difficile d’anticiper toutes les entrées à traiter correctement il est possible que la relation entre l’entrée et la sortie évolue dans le temps
(ex.: classification de pourriels) parfois, on a aucune idée comment programmer la fonction désirée
(ex.: reconnaissance de visage)
IFT 615 Froduald Kabanza 4
![Page 5: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/5.jpg)
Composantes de l’agent concernées par l’apprentissage
IFT 615 Froduald Kabanza 5
![Page 6: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/6.jpg)
Types de problèmes d’apprentissage
● Il existe plusieurs sortes de problèmes d’apprentissage, qui se distinguent par la nature de la supervision offerte par nos données apprentissage supervisé : sortie désirée (cible ou « target ») est fournie
explicitement par les données (sujet de ce cours)» ex.: reconnaître les âges des personnes à l’aide des exemples de photos
apprentissage par renforcement : le signal d’apprentissage correspond seulement à des récompenses et punitions» ex.: Robot qui apprend à naviguer dans un environnement
apprentissage non-supervisé : les données ne fournissent pas de signal explicite et le modèle doit extraire de l’information uniquement à partir de la structure des entrées» ex.: identifier différents thèmes d’articles de journaux en regroupant les articles
similaires (« clustering ») et plusieurs autres!
IFT 615 Froduald Kabanza 6
![Page 7: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/7.jpg)
Types de problèmes d’apprentissage
IFT 615 Froduald Kabanza 7
● Dans ce cours, on va juste introduire l’apprentissage par renforcement et l’apprentissage supervisé
● Voir le cours IFT 603 - Techniques d'apprentissage pour en savoir plus sur le grand monde de l’apprentissage automatique
![Page 8: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/8.jpg)
8
APPRENTISSAGE PAR RENFORCEMENT
IFT 615 Froduald Kabanza
![Page 9: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/9.jpg)
Idée de base
● L’apprentissage par renforcement s’intéresse au cas où l’agent doit apprendre à agir seulement à partir des récompenses ou renforcements
IFT 615 Froduald Kabanza 9
● Données du problème d’apprentissage: L’agent agit sur son environnement Reçoit une retro-action sous-forme de récompense (renforcement) Son but est de maximiser la somme des recompenses espérés
● Objectif: Apprendre à maximiser somme des recompenses
2
2
1
1
0
0210
r
a
r
a
r
a sss
10 avec , 22
10 rrr
![Page 10: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/10.jpg)
Exemple
● L’agent vit dans un environnement représenté par une grille 3 x 4
● Des murs bloquent le chemin de l’agent
● L’environnement est stochastique
● L’agent reçoit des récompenses:
-0.04 partout, sauf dans (4,3) où
il reçoit +1 et dans (4,2) où il reçoit -1
● L’agent ne connait pas à priori
le modèle de l’environnement P(s’|s,a)
● Ni la fonction de récompense R(s)
● Son but est de maximiser la somme des récompenses
IFT 615 Froduald Kabanza 10
X
?
X
X X
E N S
W
![Page 11: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/11.jpg)
Apprentissage par renforcement
● Nous avons encore un processus de décision de Markov Nous cherchons encore une politique qui maximise (approximativement) la
somme des récompenses espérée.
● Mais nous ne connaissons pas le modèle d’action P(s’|s, a) ou la fonction de récompense R(s) Nous ne savons pas quelles actions chosir Nous ne savons pas quels états sont bons
● En fait, il faudra tâtonner (essayer des actions) pour apprendre
● En résumé, l’apprentissage par renforcement vise aussi à trouver un plan optimal, mais sans connaître le modèle de transition de l’environnement
● Certains diront que c’est la forme la plus pure d’apprentissage en IA c’est aussi une des plus difficiles à réussir...
IFT 615 Froduald Kabanza 11
![Page 12: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/12.jpg)
12
Deux cas considérés
● Apprentissage passif L’agent a une politique fixe Essaie d’apprendre l’utilité des états en observant l’occurrence des états Similaire à l’évaluation d’une politique
» Sert souvent de composante à l’apprentissage active» Inspire souvent des algorithmes d’apprentissage active
● Apprentissage actif L’agent essaie de trouver une bonne politique en agissant dans
l’environnement Similaire à résoudre le PDM sous-jacent à cet environnement
» Mais sans avoir le modèle correspondant
![Page 13: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/13.jpg)
Dans ce cours...
● On va se concentrer sur le cas d’un environnement parfaitement observé d’un environnement stochastique (le résultat d’une action n’est pas
déterministe) où on ne connaît pas l’environnement (c.-à-d. c’est un MDP inconnu) où on peut ne pas connaître la fonction de renforcement R(s)
● Après ce cours, vous connaîtrez les notions de bases sur apprentissage par renforcement passif apprentissage par renforcement actif dilemme exploration vs. exploitation
IFT 615 Froduald Kabanza 13
![Page 14: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/14.jpg)
14
RAPPEL
IFT 615 Froduald Kabanza
![Page 15: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/15.jpg)
Rappel: processus de décision markovien
● Un processus de décision markovien (Markov decision process, ou MDP) est défini par: un ensemble d’états S (incluant un étant initial s0) un ensemble d’actions possibles Actions(s) (ou A(s)) lorsque
je me trouve à l’état s un modèle de transition P(s’|s, a), où a A(s) une fonction de récompense R(s) (utilité d’être dans l’état s)
● Un plan (politique) π est un ensemble de décisions qui associe un état s à une action a = π(s)
IFT 615 Froduald Kabanza 15
![Page 16: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/16.jpg)
Rappel: processus de décision markovien
● La fonction de valeur (utilité) U(s) d’un plan π est donnée par les
équations
Uπ(s) = R(s) + γ Σ s’ S P(s’|s, π(s)) Uπ(s’)
où γ est un facteur d’escompte donné
● On note parfois U(π,s) ou Uπ(s)
● NOUVEAU: on va supposer l’existence d’états terminaux lorsque l’agent atteint cet état, la simulation est arrêtée on s’intéresse à la somme des récompenses jusqu’à l’atteinte d’un état
terminal» ex.: au tic-tac-toe, l’état terminal est une grille de fin de partie (c.-à-d. une grille
complète ou une grille où un des joueurs a gagné)
IFT 615 Froduald Kabanza 16
![Page 17: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/17.jpg)
Utilité d’un plan
● R(s): récompense pour l’état s
● U(π,s): utilité (valeur) du plan π à l’état s
U(π,s) = R(s) + γ Σ s’ S P(s’|s, π(s)) U(π, s’)
γ: facteur d’escompte (0 ≤ γ ≤ 1), indique l’importance relative des récompenses futures par rapport à la récompense actuelle
S: espace d’états π(s): action du plan à l’état s P(s’|s, π(s)): probabilité de la transition du MDP
IFT 615 Froduald Kabanza 17
récompenseactuelle
somme des récompenses futures espérée
![Page 18: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/18.jpg)
Équations de Bellman pour la valeur optimale
● Les équations de Bellman nous donnent l’utilité d’un état (c.à-d., l’utilité des plans optimaux dans un état)
U(s) = R(s) + max γ Σ s’ S P(s’|s,a) U(s’) s S
● Si nous pouvons calculer U, nous pourrons calculer un plan optimal aisément: il suffit de choisir dans chaque état s l’action qui maximise U(s)
(c.-à-d. le argmax)
a
IFT 615 Froduald Kabanza 18
![Page 19: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/19.jpg)
3
2
1
1 2 3 4
+1
-1
0.705
3
2
1
1 2 3 4
+1
-1
0.812
0.762
0.868 0.912
0.660
0.655 0.611 0.388
utilities of states:
Exemple : Utilité d’un plan
● P(s|s’,a) : 0.8 succès; 0.1 à angle droit à l’opposé de la direction prévue● R(S) : R(s)= -0.04 partout, sauf R((4,3))=+1 et R((4,3))=+1 et R((4,2))=-1 ● Facteur d’escompte = 1
![Page 20: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/20.jpg)
Rappel : Itération de la valeur
●Idée: Commencer avec U0(s) = 0
Étant donné Ui, calculer les valeurs de tous les états pour l’itération i+1:
U’(s) = R(s) + max γ Σ s’ S P(s’|s,a) U(s’) a
Cet étape est mise à jour de la valeur ou la mise à jour de Bellman
Répéter jusqu’à la convergence
●Théorème: va converger aux valeurs optimales
20
![Page 21: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/21.jpg)
Exemple: Rappel itération de la valeur
●Les valeurs se propagent à rebours vers tous les états. Éventuellement chaque état a la valeur exacte.
●Facteur d’escompte = 0.5
V1 V2
21
0.39
![Page 22: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/22.jpg)
Exemple: Itération de la valeur
V2 V3
22
0.39 0.390.13
0.1
●Les valeurs se propagent à rebours vers tous les états. Éventuellement chaque état a la valeur exacte.
●Facteur d’escompte = 0.5
![Page 23: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/23.jpg)
23
APPRENTISSAGE PASSIFIntroduction
IFT 615 Froduald Kabanza
![Page 24: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/24.jpg)
24
Rappel
● Apprentissage passif L’agent a une politique fixe Essaie d’apprendre l’utilité des états en observant l’occurrence des états Similaire à l’évaluation d’une politique
![Page 25: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/25.jpg)
Apprentissage passif
● Définition: soit un plan π donné, apprendre la fonction de valeur sans connaître P(s’|s, a)
● Exemple illustratif: déplacement sur une grille 3 x 4
plan π illustré par les flèches
R(s) = -0.04 partout saufaux états terminaux
l’environnement est stochastique
l’agent arrête auxétats terminaux
on suppose γ=1
IFT 615 Froduald Kabanza 25
étatsterminaux
![Page 26: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/26.jpg)
Apprentissage passif
● Définition: soit un plan π donné, apprendre la fonction de valeur sans connaître P(s’|s, a)
● Puisqu’on ne connaît pas P(s’|s, a) on doit apprendre à partir d’essais 1. (1,1)-.04 (1,2)-.04 (1,3)-.04 (1,2)-.04 (1,3)-.04 (2,3)-.04 (3,3)-.04 (4,3)+1
2. (1,1)-.04 (1,2)-.04 (1,3)-.04 (2,3)-.04 (3,3)-.04 (3,2)-.04 (3,3)-.04 (4,3)+1
3. (1,1)-.04 (2,1)-.04 (3,1)-.04 (3,2)-.04 (4,2)-1
● Comment estimer la fonction de valeurs U(s) à partir de ces essais?
● Trois approches: Estimation directe Programmation dynamique adaptative Différence temporelle
IFT 615 Froduald Kabanza 26
![Page 27: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/27.jpg)
27
APPRENTISSAGE PASSIFApproche par estimation directe
IFT 615 Froduald Kabanza
![Page 28: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/28.jpg)
Approche par estimation directe
● Approche la plus simple: calculer la moyenne de ce qui est observé dans les essais
● Essais 1. (1,1)-.04 (1,2)-.04 (1,3)-.04 (1,2)-.04 (1,3)-.04 (2,3)-.04 (3,3)-.04 (4,3)+1
2. (1,1)-.04 (1,2)-.04 (1,3)-.04 (2,3)-.04 (3,3)-.04 (3,2)-.04 (3,3)-.04 (4,3)+1
3. (1,1)-.04 (2,1)-.04 (3,1)-.04 (3,2)-.04 (4,2)-1
● Estimation de Uπ( (1,1) ) dans l’essai 1, la somme des récompenses à partir de (1,1) est 0.72 dans l’essai 2, on obtient également 0.72 dans l’essai 3, on obtient plutôt -1.16 l’estimation directe de U( (1,1) ) est donc (0.72+0.72-1.16)/3 = 0.09333
IFT 615 Froduald Kabanza 28
![Page 29: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/29.jpg)
Approche par estimation directe
● Approche la plus simple: calculer la moyenne de ce qui est observé dans les essais
● Essais 1. (1,1)-.04 (1,2)-.04 (1,3)-.04 (1,2)-.04 (1,3)-.04 (2,3)-.04 (3,3)-.04 (4,3)+1
2. (1,1)-.04 (1,2)-.04 (1,3)-.04 (2,3)-.04 (3,3)-.04 (3,2)-.04 (3,3)-.04 (4,3)+1
3. (1,1)-.04 (2,1)-.04 (3,1)-.04 (3,2)-.04 (4,2)-1
● Estimation de Uπ( (1,2) ) dans l’essai 1, l’état (1,2) est visité deux fois, avec des sommes de récompenses à partir de (1,2) de 0.76 et 0.84 dans l’essai 2, on observe 0.76 l’essai 3 ne visite pas (1,2) l’estimation directe de Uπ( (1,2) ) est donc (0.76+0.84+0.76)/3 = 0.78666
IFT 615 Froduald Kabanza 29
![Page 30: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/30.jpg)
Approche par estimation directe
● Essais 1. (1,1)-.04 (1,2)-.04 (1,3)-.04 (1,2)-.04 (1,3)-.04 (2,3)-.04 (3,3)-.04 (4,3)+1
2. (1,1)-.04 (1,2)-.04 (1,3)-.04 (2,3)-.04 (3,3)-.04 (3,2)-.04 (3,3)-.04 (4,3)+1
3. (1,1)-.04 (2,1)-.04 (3,1)-.04 (3,2)-.04 (4,2)-1
● L’estimation directe ignore les liens entre les états: elle manque d’occasion d’apprentissage
Par exemple, bien que l’essai 1 dit rien sur (3,2), elle nous apprend que (3,3) a une valeur élevée
On pourrait également déduire que (3,2) a une valeur élevée, puisque (3,2) est adjacent à (3,3)
● Autrement dit, on ignore les contraintes entre les utilités des états, telles que donnée par l’équation
Uπ(s) = R(s) + γ Σ s’ S P(s’|s, π(s)) Uπ(s’)
IFT 615 Froduald Kabanza 30
![Page 31: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/31.jpg)
31
APPRENTISSAGE PASSIFApproche par programmation dynamique adaptative
IFT 615 Froduald Kabanza
![Page 32: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/32.jpg)
Approche par programmation dynamique adaptative
● C’est l’idée derrière la programmation dynamique adaptative (PDA) tirer profit des équations de la fonction de valeur pour estimer U(s)
● L’approche par PDA n’apprend pas directement U(s), mais apprend plutôt le modèle de transition P(s’|s, a) étant donnée une estimation de P(s’|s, a), on peut résoudre
Uπ(s) = R(s) + γ Σ s’ S P(s’|s, π(s)) Uπ(s’) on obtient alors notre estimation de U(s)
● On peut estimer P(s’|s, a) à partir des fréquences des transitions observées:
IFT 615 Froduald Kabanza 32
P(s’|s, a) = Σ 𝑁 𝑠′∨𝑠𝑎essais
Σessais
nb. de transitions de (s,a,s’)dans l’essai
nb. de fois que l’action a est choisi dans l’état s dans l’essai
somme surtous les essais
𝑁 𝑠𝑎
![Page 33: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/33.jpg)
Approche par programmation dynamique adaptative
IFT 615 Froduald Kabanza 33
Fonction qui résout Uπ(s) = R(s) + γ Σ s’ S P(s’|s, π(s)) Uπ(s’)
![Page 34: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/34.jpg)
Approche par programmation dynamique adaptative
● Exemple (avec état terminal)
● MDP à 3 états: S = {s0, s1, s2}
● Fonction de récompense: R(s0) = -0.1, R(s1)= -0.1, R(s2) = 1
● Le facteur d’escompte est γ=0.5● s2 est un état terminal, s0 est l’état initial
● Plan suivi: π(s0) = a1, π(s1) = a3
IFT 615 Froduald Kabanza 34
a21
a10.2
a2 0.2
a41
0.8a1
a20.8s2s1s0
0.1
0.9a3
a3
![Page 35: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/35.jpg)
Approche par programmation dynamique adaptative
●Initialement, on suppose aucune connection entre les états
IFT 615 Froduald Kabanza 35
s2s1s0
![Page 36: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/36.jpg)
Approche par programmation dynamique adaptative
● Observations: (s0) -0.1
U(s0) = -0.1U(s1) = -0.1U(s2) = 1
IFT 615 Froduald Kabanza 36
s2s1s0
![Page 37: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/37.jpg)
Approche par programmation dynamique adaptative
●Observations: (s0) -0.1 (s0) -0.1
U(s0) = -0.1 + 0.5 U(s0)U(s1) = -0.1U(s2) = 1
IFT 615 Froduald Kabanza 37
s2s1s0
1/1 = 1a1
![Page 38: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/38.jpg)
Approche par programmation dynamique adaptative
●Observations: (s0) -0.1 (s0) -0.1 (s1) -0.1
U(s0) = -0.1 + 0.5 (0.5 U(s0) + 0.5 U(s1) )U(s1) = -0.1U(s2) = 1
IFT 615 Froduald Kabanza 38
s2s1s0
1/2
1/2 a1 a1
![Page 39: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/39.jpg)
Approche par programmation dynamique adaptative
●Observations: (s0) -0.1 (s0) -0.1 (s1) -0.1 (s0) -0.1
U(s0) = -0.1 + 0.5 (0.5 U(s0) + 0.5 U(s1) )U(s1) = -0.1 + 0.5 U(s0)U(s2) = 1
IFT 615 Froduald Kabanza 39
s2s1s0
1/2
1/2
1/1 = 1
a1
a3
a1
![Page 40: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/40.jpg)
Approche par programmation dynamique adaptative
●Observations: (s0) -0.1 (s0) -0.1 (s1) -0.1 (s0) -0.1 (s1) -0.1
U(s0) = -0.1 + 0.5 (⅓ U(s0) + ⅔ U(s1) )U(s1) = -0.1 + 0.5 U(s0)U(s2) = 1
IFT 615 Froduald Kabanza 40
s2s1s0
1/3
2/3
1/1 = 1
a1
a3
a1
![Page 41: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/41.jpg)
Approche par programmation dynamique adaptative
●Observations: (s0) -0.1 (s0) -0.1 (s1) -0.1 (s0) -0.1 (s1) -0.1 (s2) 1
U(s0) = -0.1 + 0.5 (⅓ U(s0) + ⅔ U(s1) )U(s1) = -0.1 + 0.5 (0.5 U(s0) + 0.5 U(s2) )U(s2) = 1
IFT 615 Froduald Kabanza 41
s2s1s0
1/3
2/3
1/2
1/2
fin del’essai
a1
a3
a3a1
![Page 42: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/42.jpg)
Approche par programmation dynamique adaptative
●Observations: (s0) -0.1 (s0) -0.1 (s1) -0.1 (s0) -0.1 (s1) -0.1 (s2) 1
U(s0) = -0.1 + 0.5 (⅓ U(s0) + ⅔ U(s1) )U(s1) = -0.1 + 0.5 (0.5 U(s0) + 0.5 U(s2) )U(s2) = 1
IFT 615 Froduald Kabanza 42
s2s1s0
1/3
2/3
1/2
1/2
fin del’essai
À tout moment,on peut calculer
les U(s)
a1
a3
a3a1
![Page 43: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/43.jpg)
Approche par programmation dynamique adaptative
● On a vu comment résoudre le système d’équations des U(s) dans le cours sur les MDP on peut écrire le système sous forme b = A x, et calculer x = A-1 b
● Cette opération peut être coûteuse à répéter après chaque observation inverser la matrice A est dans O(|S|3)
IFT 615 Froduald Kabanza 43
![Page 44: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/44.jpg)
Approche par programmation dynamique adaptative
● Approche alternative: méthode itérative, similaire à value iteration1. Répéter (jusqu’à ce que le changement en V soit négligeable)
I.pour chaque état s calculer:U’(s) = R(s) + γ Σ s’ S P(s’|s,π(s)) U(s’)
II.si |U- U’| ≤ tolérance, quitterIII. U U’
● Plutôt qu’initialiser U(s) à 0, on peut l’initialiser à sa valeur précédente, avant la nouvelle observation une seule observation peut avoir un impact minime sur la nouvelle valeur de
U(s) qui en résulte l’approche itérative + initialisation à la valeur précédente devrait donc
converger rapidement
IFT 615 Froduald Kabanza 44
sans le maxp/r à l’action
![Page 45: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/45.jpg)
Approche par programmation dynamique adaptative
● Approche alternative: méthode itérative, similaire à value iteration1. Répéter (jusqu’à ce que le changement en V soit négligeable).
I.pour chaque état s calculer:U’(s) = R(s) + γ Σ s’ S P(s’|s,π(s)) U(s’)
II.si |U - U’| ≤ tolérance, quitterIII. U U’
● Autres accélérations borner le nombre d’itérations (c.-à-d. ne pas attendre d’atteindre le seuil) balayage hiérarchisé (prioritized sweeping)
»on garde un historique des changements |U(s)- V’(s)|»on priorise les états s avec une grande valeur précédente de |U(s)- V’(s)|
● Permet de résoudre des problèmes où |S| est beaucoup plus grands
IFT 615 Froduald Kabanza 45
![Page 46: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/46.jpg)
Approche par programmation dynamique adaptative
● Contrairement à l’estimation directe, l’approche par PDA peut apprendre après chaque observation, c.-à-d. après chaque transition d’un essai pas besoin de compléter un essai pour obtenir une nouvelle estimation de
U(s)
● Parfois, la fonction de récompense n’est pas connue l’agent ne fait qu’observer la récompense à chaque état, et n’a pas accès
directement à la fonction R(s) par contre on a besoin de R(s) dans les équations de la fonction de valeur dans ce cas, on initialise notre estimation R(s) à 0, et on la met à jour lorsqu’on
atteint l’état s pour la première fois
IFT 615 Froduald Kabanza 46
![Page 47: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/47.jpg)
Approche par programmation dynamique adaptative
IFT 615 Froduald Kabanza 47
![Page 48: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/48.jpg)
Approche par programmation dynamique adaptative
● Un problème avec l’approche par PDA est qu’on doit mettre à jour toutes les valeurs de U(s), pour tout s, après chaque observation très coûteux en pratique si le nombre d’états est grand (ex.: exponentiel) inutile pour un état s’ qui n’est pas atteignable via l’état de la nouvelle
observation
● On doit résoudre les équations de U(s) parce qu’on estime U(s) seulement indirectement, via notre estimation de P(s’|s, a)
● Serait-il possible d’estimer directement U(s) et tenir compte des interactions entre les valeurs, sans avoir à passer par P(s’|s, a)?
IFT 615 Froduald Kabanza 48
![Page 49: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/49.jpg)
Apprentissage par différence temporelle
● Si la transition s à s’ avait lieu tout le temps, on s’attendrait à ce que
U(s) = R(s) + γ Σ s’ S P(s’|s, π(s)) U(s’)
= R(s) + γ U(s’)● Plutôt que d’attendre la fin de l’essai pour mettre à jour notre estimation
de U(s), on pourrait la rapprocher de R(s) + γ U(s’): U(s) (1-α) U(s) + α (R(s) + γ U(s’))
où α est un taux d’apprentissage, entre 0 et 1
● On obtient la règle d’apprentissage par différence temporelle (temporal difference) ou TD
U(s) U(s) + α ( R(s) + γ U(s’) – U(s) )
IFT 615 Froduald Kabanza 49
![Page 50: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/50.jpg)
Apprentissage par différence temporelle
IFT 615 Froduald Kabanza 50
Utile si on veut varier le taux d’apprentissage
![Page 51: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/51.jpg)
Approche par programmation dynamique adaptative
● Exemple (avec état terminal)
● MDP à 3 états: S = {s0, s1, s2}
● Fonction de récompense: R(s0) = -0.1, R(s1)= -0.1, R(s2) = 1
● Le facteur d’escompte est γ=0.5● s2 est un état terminal, s0 est l’état initial
● Plan suivi: π(s0) = a1, π(s1) = a3
IFT 615 Froduald Kabanza 51
a21
a10.2
a2 0.2
a41
0.8a1
a20.8s2s1s0
0.1
0.9a3
a3
![Page 52: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/52.jpg)
Apprentissage par différence temporelle
●Initialisation
U(s0) = 0U(s1) = 0U(s2) = 0
●On va utiliser α = 0.1
IFT 615 Froduald Kabanza 52
s2s1s0
si on connaît R(s), on peut tout initialiser U(s) à R(s)
![Page 53: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/53.jpg)
Apprentissage par différence temporelle
●Observations: (s0) -0.1
U(s0) -0.1U(s1) = 0U(s2) = 0
●On va utiliser α = 0.1
IFT 615 Froduald Kabanza 53
s2s1s0
parce que s0 est visité pour la première fois
![Page 54: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/54.jpg)
Apprentissage par différence temporelle
●Observations: (s0) -0.1 (s0) -0.1
U(s0) U(s0) + 0.1 (R(s0) + 0.5 U(s0) - U(s0) ) = -0.1 + 0.1 (-0.1 - 0.05 + 0.1)= -0.105
U(s1) = 0U(s2) = 0
IFT 615 Froduald Kabanza 54
s2s1s0
U(s) U(s) + α ( R(s) + γ U(s’) – U(s) )
![Page 55: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/55.jpg)
Apprentissage par différence temporelle
●Observations: (s0) -0.1 (s0) -0.1 (s1) -0.1
U(s1) -0.1
U(s0) U(s0) + 0.1 (R(s0) + 0.5 U(s1) - U(s0) ) = -0.105 + 0.1 (-0.1 - 0.05 + 0.105) = -0.1095
U(s1) = -0.1U(s2) = 0IFT 615 Froduald Kabanza 55
s2s1s0
parce que s1 est visité pour la première fois
U(s) U(s) + α ( R(s) + γ U(s’) – U(s) )
![Page 56: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/56.jpg)
Apprentissage par différence temporelle
●Observations: (s0) -0.1 (s0) -0.1 (s1) -0.1 (s0) -0.1
U(s0) = -0.1095U(s1) U(s1) + 0.1 (R(s1) + 0.5 U(s0) - U(s1) )
= -0.1 + 0.1 (-0.1 - 0.05475 + 0.1) = -0.105475
U(s2) = 0
IFT 615 Froduald Kabanza 56
s2s1s0
U(s) U(s) + α ( R(s) + γ U(s’) – U(s) )
![Page 57: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/57.jpg)
Apprentissage par différence temporelle
●Observations: (s0) -0.1 (s0) -0.1 (s1) -0.1 (s0) -0.1 (s1) -0.1
U(s0) U(s0) + 0.1 (R(s0) + 0.5 U(s1) - U(s0) ) = -0.1095 + 0.1 (-0.1 - 0.0527375 +
0.1095) = -0.11382375
U(s1) = -0.105475U(s2) = 0
IFT 615 Froduald Kabanza 57
s2s1s0
U(s) U(s) + α ( R(s) + γ U(s’) – U(s) )
![Page 58: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/58.jpg)
Apprentissage par différence temporelle
●Observations: (s0) -0.1 (s0) -0.1 (s1) -0.1 (s0) -0.1 (s1) -0.1 (s2) 1
U(s2) 1
U(s0) = -0.11382375U(s1) U(s1) + 0.1 (R(s1) + 0.5 U(s2) - U(s1))
= -0.105475 + 0.1 (1 + 0.5 + 0.105475 ) = 0.0550725
U(s2) = 1IFT 615 Froduald Kabanza 58
s2s1s0
fin del’essai
parce que s2 est visité pour la première fois
U(s) U(s) + α ( R(s) + γ U(s’) – U(s) )
![Page 59: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/59.jpg)
59
APPRENTISSAGE ACTIF
IFT 615 Froduald Kabanza
![Page 60: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/60.jpg)
Apprentissage par renforcement actif
● Dans le cas passif, le plan à suivre est pré-déterminé peu utile si on ne connaît pas le plan optimal à suivre
● Dans le cas actif, l’agent doit aussi chercher le plan optimal l’agent doit simultanément chercher le plan optimal et sa fonction de valeur U(s) est maintenant une estimation de la fonction de valeur du plan optimal
● Dans le cas PDA, deux changements sont à faire on applique value iteration au MDP estimé (afin de résoudre les équations
pour la politique optimale) l’action choisie par l’agent devient
π(s) = argmax Σ s’ S P(s’|s,a) U(s’)
IFT 615 Froduald Kabanza 60
a A(s)
![Page 61: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/61.jpg)
Appentissage actif avec PDA
IFT 615 Froduald Kabanza 61
ACTIVE-GLOUTON
argmax Σ s S P(s|s’,a) U(s)a A(s)
Résoudre système d’équations U(s) = R(s) + max γ Σ s’ S P(s’|s,a) U(s’)Optimal-Policy(U,mdp)
![Page 62: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/62.jpg)
Appentissage actif avec PDA
● Rappel de l’exemple
● On a des actions possibles différentes, pour chaque état A(s0) = {a1, a2} A(s1) = {a2, a3} A(s2) = {}
IFT 615 Froduald Kabanza 62
a21
a10.2
a2 0.20.8a1
a20.8s2s1s0
0.1
0.9a3
a3
![Page 63: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/63.jpg)
Approche par programmation dynamique adaptative
●Observations: (s0) -0.1 (s0) -0.1 (s1) -0.1 (s0) -0.1
U(s0) = -0.1 + 0.5 max{ 0.5 U(s0) + 0.5 U(s1), 0 }U(s0) = -0.1
U(s1) = -0.1 + 0.5 max{ 0, U(s0) }U(s1) = -0.1
U(s2) = 1 U(s2) = 1
●Pour choisir quelle action prendre, on compare Σ s S P(s|s’,a2) U(s) = 0 (puisque P(s|s’,a2) pas appris encore pour a2) Σ s S P(s|s’,a1) U(s) = 0.5 U(s0) + 0.5 U(s1) = -0.1
●L’action choisie par l’agent est donc a2
IFT 615 Froduald Kabanza 63
s2s1s0
1/2
1/2
1/1 = 1
a1
a3
a1
valueiteration
a1 a1 a3
![Page 64: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/64.jpg)
Dilemme exploration vs. exploitation
● L’approche précédente est dite vorace (gloutonne) elle met à jour le plan suivi par celui qui est optimal maintenant en d’autres mots, elle exploite le plus possible l’information recueilli jusqu’à
maintenant
● Les approches voraces trouvent rarement le plan optimal elles ne tiennent pas compte du fait que l’information accumulée jusqu’à
maintenant est partielle en d’autres mots, elles ne considèrent pas la possibilité d’explorer
l’environnement plus longuement, pour amasser plus d’information sur celui-ci
● Un parallèle similaire existe entre le hill-climbing et le simulated annealing en recherche locale
IFT 615 Froduald Kabanza 64
![Page 65: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/65.jpg)
Dilemme exploration vs. exploitation
● Exemple: cas où l’action « » n’a jamais été exécutée à l’état (1,2)● L’agent ne sait pas que ça mène à (1,3), qui mène à un chemin plus court!
IFT 615 Froduald Kabanza 65
Courbe d’apprentissage
Plan découvert
![Page 66: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/66.jpg)
Dilemme exploration vs. exploitation
● Trop exploiter mène à des plans non optimaux
● Trop explorer ralentit l’apprentissage inutilement
● Trouver la balance optimale entre l’exploration et l’exploitation est un problème ouvert en général
● Des stratégies d’exploration/exploitation optimales existent seulement dans des cas très simples voir le cas du n-armed bandit dans le livre, p. 841
IFT 615 Froduald Kabanza 66
![Page 67: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/67.jpg)
Dilemme exploration vs. exploitation
● On se contente donc d’heuristiques en pratique
● Exemple: introduction d’une fonction d’exploration f(u,n) cette fonction augmente artificiellement la récompense future d’actions
inexplorées
● L’approche par PDA basée sur value iteration ferait les mises à jour
U(s) = R(s) + max γ f( Σ s’ S P(s’|s,a) U(s’), N(s,a) )
où N(s,a) est le nombre de fois que l’action a a été choisie à l’état set f(u,n) =
● Garantit que a sera choisie dans s au moins Ne fois durant l’apprentissage
IFT 615 Froduald Kabanza 67
R+ si n < Ne
u sinon
estimation optimiste de récompense future (hyper-paramètre)
![Page 68: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/68.jpg)
Appentissage actif avec PDA
IFT 615 Froduald Kabanza 68
ACTIVE
argmax Σ s S P(s|s’,a) U(s)a A(s)
Résoudre système d’équations R(s) + max γ f( Σ s’ S P(s’|s,a) U(s’), N(s,a) )
Optimal-Policy(U,mdp)
![Page 69: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/69.jpg)
Apprentissage actif par différence temporelle
● Dans le cas de l’apprentissage actif TD, la règle de mise à jour demeure la même que dans le cas de l’apprentissage passif
U(s) U(s) + α ( R(s) + γ U(s’) – U(s) )
● La différence entre TD passif et TD actif est au niveau du choix de l’action.
Le choix de l’action dans TD actif se fait comme dans PDA actif
IFT 615 Froduald Kabanza 69
![Page 70: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/70.jpg)
Apprentissage actif avecQ-learning
● Il existe une variante de la méthode TD, nommée Q-learning, qui apprend la fonction action-valeur Q(s,a)
on n’apprend plus U(s), soit la somme espérée des renforcements à partir de s jusqu’à la fin pour la politique optimale
on apprend plutôt Q(s,a), soit la somme espérée des renforcements à partir de s et l’exécution de a, jusqu’à la fin pour la politique optimale
le lien entre Q(s,a) et U(s) est que U(s) = max Q(s,a)
● Le plan de l’agent est alors π(s) = argmax Q(s,a)
IFT 615 Froduald Kabanza 70
a
![Page 71: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/71.jpg)
Apprentissage actif avecQ-learning
● Selon la définition de Q(s,a), on a
Q(s,a) = R(s) + γ Σ s’ S P(s’|s,a) max Q(s’,a’)
● Comme pour l’approche TD, on traduit cette équation en la mise à jour
Q(s,a) Q(s,a) + α ( R(s) + γ max Q(s’,a’) – Q(s,a) )
● On voit la similarité avec l’approche TD initiale
U(s) U(s) + α ( R(s) + γ U(s’) – U(s) )
IFT 615 Froduald Kabanza 71
a’
a’
![Page 72: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/72.jpg)
Apprentissage actif avecQ-learning
●Initialisation:
Q(s0,a1) = 0 Q(s0,a2) = 0 Q(s1,a2) = 0 Q(s1,a3) = 0 Q(s2,None) = 0
●On va utiliser α = 0.5, γ = 0.5
IFT 615 Froduald Kabanza 72
s2s1s0
![Page 73: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/73.jpg)
Apprentissage actif avecQ-learning
●Observations: (s0) -0.1
On ne fait rien (on a besoin d’un triplet (s, a, s’) )
●Action à prendre π(s0) = argmax{ Q(s0,a1), Q(s0,a2) }= argmax{ 0, 0 }= a2 (arbitraire, ça
aurait aussi pu être a1)IFT 615 Froduald Kabanza 73
s2s1s0
![Page 74: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/74.jpg)
Apprentissage actif avecQ-learning
●Observations: (s0) -0.1 (s0) -0.1
Q(s0,a2) Q(s0,a2) + α ( R(s0) + γ max{ Q(s0,a1), Q(s0,a2)} - Q(s0,a2) )= 0 + 0.5 ( -0.1 + 0.5 max{ 0, 0} - 0) = -0.05
●Action à prendre π(s0) = argmax{ Q(s0,a1), Q(s0,a2) }= argmax{ 0, -0,05 }= a1 (changement de
politique!)IFT 615 Froduald Kabanza 74
a2
a2
s2s1s0
![Page 75: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/75.jpg)
Apprentissage actif avecQ-learning
●Observations: (s0) -0.1 (s0) -0.1 (s1) -0.1
Q(s0,a1) Q(s0,a1) + α ( R(s0) + γ max{ Q(s1,a2), Q(s1,a3)} - Q(s0,a1) )= 0 + 0.5 ( -0.1 + 0.5 max{ 0, 0} - 0) = -0.05
●Action à prendre π(s1) = argmax{ Q(s1,a2), Q(s1,a3) }= argmax{ 0, 0 }= a2 (arbitraire, ça
aurait aussi pu être a3)IFT 615 Froduald Kabanza 75
a2 a1
a1
s2s1s0
![Page 76: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/76.jpg)
Apprentissage actif avecQ-learning
●Observations: (s0) -0.1 (s0) -0.1 (s1) -0.1 (s0) -0.1
Q(s1,a2) Q(s1,a2) + α ( R(s1) + γ max{ Q(s0,a1), Q(s0,a1)} - Q(s1,a2) )= 0 + 0.5 ( -0.1 + 0.5 max{ -0.05, -0.05} + 0) = -0.0625
●Action à prendre π(s0) = argmax{ Q(s0,a1), Q(s0,a1) }= argmax{ -0.05, -0.05 }= a1 (arbitraire, ça
aurait aussi pu être a2)IFT 615 Froduald Kabanza 76
a2 a1 a2
a2
s2s1s0
![Page 77: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/77.jpg)
Apprentissage actif avecQ-learning
●Observations: (s0) -0.1 (s0) -0.1 (s1) -0.1 (s0) -0.1 (s1) -0.1
Q(s0,a1) Q(s0,a1) + α ( R(s0) + γ max{ Q(s1,a2), Q(s1,a3)} - Q(s0,a1) )= -0.05 + 0.5 ( -0.1 + 0.5 max{ -0.0625, 0 } + 0.05) = -0.075
●Action à prendre π(s1) = argmax{ Q(s1,a2), Q(s1,a3) }= argmax{ -0.0625, 0 }= a3 (changement
de politique!)IFT 615 Froduald Kabanza 77
a1
a2 a1 a3 a1
s2s1s0
![Page 78: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/78.jpg)
Apprentissage actif avecQ-learning
●Observations: (s0) -0.1 (s0) -0.1 (s1) -0.1 (s0) -0.1 (s1) -0.1 (s2) 1
État terminal: Q(s2,None) = 1
Q(s1,a3) Q(s1,a3) + α ( R(s1) + γ max{ Q(s2,None) } - Q(s1,a3) )= 0 + 0.5 ( -0.1 + 0.5 max{ 1 } + 0) = 0.2
●On recommence un nouvel essai...
IFT 615 Froduald Kabanza 78
a3
a2 a1 a3 a1
s2s1s0
a3
![Page 79: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/79.jpg)
Apprentissage actif avecQ-learning
●Supposons qu’on puisse aussi faire l’action a4 à l’état s1, pour mener à s3 tel que R(s3) = 1000
●Puisque Q(s1,a4) = 0 à l’initialisation, et que Q(s1,a3) > 0 après un essai, une approche vorace n’explorera jamais s3!
●Demo: http://www.cs.ubc.ca/~poole/demos/rl/q.html
IFT 615 Froduald Kabanza 79
s2s1s0
s3?a4
![Page 80: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/80.jpg)
Généralisation à l’aide d’approximateur de fonction
● Dans des applications réelles, on ne peut visiter tous les états
Trop d’états à visiter dans les essaies d’apprentissage Mémoire limitées pour enregistrer les valeurs Q(s,a) correspondant
● Par contre, on peut généraliser en utilisant un représentants les caractéristiques (features) des états plutôt que les états eux-mêmes:
Apprendre les caractéristiques des états à partir des échantillons d’entrainement.
Généraliser aux états similaires
80
![Page 81: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/81.jpg)
Exemple: Pacman
● Supposons que nous apprenons durant les essais que cet état est mauvais (U(s) trop bas).
● Avec l’approche Q-Learning naïve telle que décrite, on ne peut rien déduire de cet état ou de sa valeur Q:
● Pas plus que pour celui-ci!
81
![Page 82: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/82.jpg)
Approximateur de fonction (représentation des états basés sur leurs caractéristiques)
● Décrire un état en utilisant un vecteur de caractéristiques
Les caractéristiques sont des fonctions réelles (souvent 0/1) qui capturent les propriétés saillants des états
Exemples de caractéristiques:» Distance au fantôme le plus proche» Distance à la nourriture la plus proche » Nombre de fantômes» 1 / (distance à la nourriture)2
» Pacman proche d’un fantôme ? (0/1)» etc.
Peut aussi décrire un état-Q (s, a) avec des caractéristiques (ex. l’action permet met pacman de la nourriture)
82
![Page 83: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/83.jpg)
Approximateur de fonction linéaire
● Alpha-beta prunning, nous avons vu que l’on peut exprimer l’utilité d’un état (par exemple, une configuration d’un jeu d’échec) en fonction d’un vecteur de features f = [f1, …, fn] et d’un devecteur de poids correspondant w = [w1, …, wn]
=
● Un algorithme d’apprentissage active TD pourrait être utilisé pour apprendre le vecteurs des paramètres (poids) w.
● Dans le même ordre d’idée, on pourrait exprimer les valeurs Q en fonction d’un vecteur de features et des poids correspondants.
(s,a)=
● Un algorithme d’apprentissage active Q-Learning pourrait alors être utilisé pour apprendre le vecteurs des paramètres (poids) w.
Voir TP #4 (Q-learning approximatif)
83
![Page 84: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/84.jpg)
Conclusion
● L’apprentissage par renforcement permet d’apprendre dans un environnement séquentiel l’apprentissage supervisé souvent limité aux environnements périodiques
● C’est un domaine de recherche très actif il y a de plus en plus d’applications impressionnantes mais nous sommes loin d’une IA réelle
● L’apprentissage par renforcement est plus difficile lorsque la récompense est lointaine (ex.: à la toute fin d’une partie) problème d’assignation de crédit (credit assignment)
» est-ce que ma victoire est due à mon premier coup? mon dernier? les deux? on ajoute parfois des renforcements positifs intermédiaires appropriés
» désavantage: demande de l’expertise
IFT 615 Froduald Kabanza 84
![Page 85: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/85.jpg)
Objectifs du cours
IFT 615 Froduald Kabanza 85
agents intelligents
recherche heuristique
recherche locale
recherche à deux adversaires
satisfaction de contraintes
Algorithmes et concepts
raisonnement probabiliste
processus de décision markovien
apprentissage par renforcement
apprentissage par renforcement sert à résoudre un MDP dans lequel on ne connaît pas le modèle de transition
![Page 86: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/86.jpg)
Apprentissage par renforcement: pour quel type d’agent?
IFT 615 Froduald Kabanza 86
Simple reflex Model-based reflex
Goal-based Utiliy-based Actif
PassifPassif
![Page 87: IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615](https://reader035.vdocuments.pub/reader035/viewer/2022062404/551d9db5497959293b8d9b84/html5/thumbnails/87.jpg)
Vous devriez être capable de...
● Distinguer l’apprentissage par renforcement passif vs. actif
● Algorithmes passifs: savoir simuler l’estimation directe savoir simuler la programmation dynamique adaptative (PDA) savoir simuler la différence temporelle (TD)
● Algorithmes actifs savoir simuler PDA actif savoir simuler Q-learning
● Savoir comment on traite le dilemme exploration vs. exploitation
IFT 615 Froduald Kabanza 87