IA et Machine Learning
Chapitre 2 Appren2ssage par Renforcement
Yu LI, yu.li@u-‐picardie.fr
Université de Picardie Jules Verne
Département Informa2que de l'UFR des Sciences 33, rue St Leu
80039 Amiens Cedex
Plan
• Exemple : chercher un trésor
• Appren2ssage par renforcement : Q-‐Learning
Exemple
Dans une grille à une dimension avec 7 cases où se trouve
un trésor (cercle jaune) sur le côté droit, l’agent (rectangle
rouge) commence à par2r du côté gauche à le chercher.
Exemple
• L’agent a 7 états : [0,1,2,3,4,5,6], et deux ac2ons : a1 / a2 = led / right. En prenant a1, l’agent ira sur la case de gauche et en prenant a2, l’agent ira à la case de droite.
• Au début l’agent déplace aléatoirement, soit à gauche soit à droit. Lorsque l’agent arrive à la case 6, il reçoit une récompense de 1 point et recommence la
recherche; sinon il reçoit 0 point de récompense et con2nue à déplacer.
0 1 2 3 4 5 6
Right right right right right right
Led Led Led Led Led
Exemple
• Le but de l’appren2ssage par renforcement
pour l’agent consiste à apprendre à prendre
les ac2ons à par2r d'expériences de façon à
op2miser une récompense quan2ta2ve au
cours de la recherche.
Q-‐Learning
• Q-‐Learning est une technique de l’appren2ssage par renforcement.
• Le principe de Q-‐Learning est d’évaluer chaque ac2on à l’état s: Q (s, a).
• Q (s, a) enregistre non seulement la note du
récompense r (1 ou 0) aheignant l'état suivant
s', mais aussi l'avenir de l'état s', c'est-‐à-‐dire ce
qui peut être apporté à long terme.
Q-‐Learning
• Q (s, a) est évaluée selon «l'équa2on de Bellman» :
– r + γ (max (Q (s ', a'))
• Afin de préserver l'historique de Q (s, a), la mise à jour de Q (s, a) est fait comme :
– Q(s, a) += α × ((r + γ × max a ′ Q(s ′ , a ′ )) -‐ Q(s, a))
• α ∈ [0, 1] est le coefficient d’appren2ssage
• γ ∈ [0, 1] est le coefficient de réduc2on
• r est la récompense obtenue sur l’état s ′
Q-‐Learning
• Le résultat du programme treasure_on_rightIHM.py où le number avec l’ac2on représentant Q(s,a) après 10 fois de l’apppen2ssage :
0 1 2 3 4 5 6
1.53e-‐10
Right 1.86e-‐08
right 1.58e-‐06
right
9.44e-‐05 right
3.83e-‐03
right 9.56e-‐02
right
Led
0.00e+00 Led
0.00e+00
Led
0.00e+00
Led
2.89e-‐08 Led
0.00e+00
AU début Q(s, a) : led right
0 0.0 0.0 1 0.0 0.0 2 0.0 0.0 3 0.0 0.0 4 0.0 0.0 5 0.0 0.0 6 0.0 0.0
Episode : total_steps = 1 45 #1er appren2ssage,45 steps pour trouver le trésor
led right 0 0.0 0.00 1 0.0 0.00 2 0.0 0.00 3 0.0 0.00 4 0.0 0.00 5 0.0 0.01 6 0.0 0.00
Episode : total_steps = 9 6 #9ième appren2ssage,6 steps led right
0 0.000000e+00 6.535350e-‐11 1 0.000000e+00 9.866654e-‐09 2 0.000000e+00 9.853564e-‐07 3 0.000000e+00 6.730368e-‐05 4 2.894130e-‐08 3.092157e-‐03 5 0.000000e+00 8.648275e-‐02 6 0.000000e+00 0.000000e+00
Episode : total_steps = 10 7 #1ième appren2ssage,7 steps led right
0 5.881815e-‐13 1.534999e-‐10 1 0.000000e+00 1.863619e-‐08 2 0.000000e+00 1.581236e-‐06 3 0.000000e+00 9.446006e-‐05 4 2.894130e-‐08 3.839580e-‐03 5 0.000000e+00 9.561792e-‐02 6 0.000000e+00 0.000000e+00