You are on page 1of 5

LAHOUAOUI Mohamed et Pr Cherki DAOUI

Dpartement informatique
Edu.lah.moh@gmail.com
daouic@yahoo.com
Universit Sultan Moulay Slimane Facult des
Sciences et Techniques Bni Mellal

Rsum Nous prsentons dans ce document la notion de fonctionnelle rsoudre, appel quation de Bellman.
lapprentissage par renforcement avec les diffrentes mthodes Lapprentissage par renforcement est le fruit de la rencontre
et algorithmes dapprentissage (Programmation dynamique, entre la psychologie exprimentale et les neurosciences
mthode de Monte Carlo, mthodes de diffrence temporelle). computationnelles.
Nous insistons sur des mthodes d'apprentissage bases sur les
diffrences temporelles comme le Q-learning et certaines de ses
variantes. Nous dcrirons par la suite, le robot quon a ralis II. MODLE DE LAPPRENTISSAGE PAR RENFORCEMENT
pour tester exprimentalement la validit de quelques Lapprentissage par renforcement dfinit un type
algorithmes de lapprentissage par renforcement dans le cas de d'interaction entre l'agent et l'environnement. Depuis une
la marche robotique deux pattes. Nous concluons par les situation relle s dans l'environnement, l'agent choisit et
rsultats de la comparaison entre deux algorithmes de excute une action a qui provoque une transition vers l'tat
lapprentissage par renforcement. s' . Il reoit en retour un signal de renforcement r
ngatif de type pnalit si laction conduit un chec ou positif
de type rcompense s'il laction est bnfique. L'agent utilise
Mots cls - Apprentissage, renforcement, Qlearning, Sarsa, alors ce signal pour amliorer sa stratgie, c'est dire la
robotique, programmation dynamique . squence de ses actions, afin de maximiser le cumul de ses
rcompenses futures. L'interaction entre l'agent et
I. INTRODUCTION l'environnement est reprsente par le diagramme de la figure
1:
Dvelopp depuis les annes 1980, lapprentissage par
renforcement est une mthode de contrle automatique qui ne
ncessite pas de connaitre le modle du systme, lintrt de
cette approche est de pouvoir raliser un contrleur capable
dapprendre commander un systme inconnu sans avoir
spcifier comment la tache doit tre ralise. Le contrleur
apprend par essai et erreur, cest -dire partir
dexpriences.

Lapprentissage par renforcement se manifeste tous les jours


dans notre quotidien, que ce soit lorsque nous marchons,
lorsque nous apprenons un nouveau langage de Figure 1 : Apprentissage par renforcement : diagramme
programmation ou lorsque nous pratiquons un sport.
d'interaction agent / environnement
Les techniques d'apprentissage par renforcement sont
particulirement utiles dans le domaine de l'intelligence et
notamment en robotique mobile. En effet, elles permettent un III. PROCESSUS DE DCISION MARKOVIENS
agent d'acqurir un comportement dsir en exploitant un
La plupart des algorithmes d'apprentissage par
simple signal de renforcement pnalisant ou rcompensant les
renforcement se situent dans le cadre des processus
actions de l'agent dans son environnement. Par ce processus
essai/erreur, l'agent amliore progressivement son dcisionnels de Markov.
comportement pour maximiser ses gains.
Un processus dcisionnel de Markov (PDM) est dfini
A la fin des annes 1950, une approche dveloppe par
Richard BELLMAN [1] utilise le concept dtat du systme
comme un quadruplet S, A, T, R o :
dynamique et de fonction de valeur pour dfinir une quation

1
- S est un ensemble d'tats :

Les tats caractrisent les situations d'un agent et de Agorithme1 : Itration sur les valeurs - Critre -pondr
l'environnement chaque instant.
Initialiser V0 V
- A est un ensemble d'actions :
n 0
Un agent choisit une action parmi les actions possibles
chaque instant t. A chaque tat de l'espace d'tat est associ un Rpter
ensemble d'actions possibles de l'espace d'action, cette relation
est reprsente par la figure 2 suivante : Pour tout s S faire

Vn+1(s)=max aA R(s,a)+ P(s\s,a)Vn(s )

REFERENCES Fin pour


[1] Laetitia Matignon (2009).Synthse dagent
n n +1
[2]
Jusqu ||Vn+1 Vn ||<

Figure 2 : Relation tats, actions Pour s S faire


-T est la probabilit de transition :T est une fonction de
transition dfinissant une distribution de probabilit sur les (s)argmaxaA R(s,a)+ P(s\s,a)Vn(s)
tats futurs.
Fin Pour
-R est le signal de renforcement :Est une fonction de
rcompense qui associe une rcompense immdiate Retourner Vn,
chaque transition.

-Politique et fonction de valeur :Une politique reprsente le


choix dune action effectuer dans un tat donn.
V. MTHODE DE MONTE CARLO
Afin de dterminer ce qui la bonne politique, on a besoin Nous avons vu dans la partie prcdente quil existait des
dun critre qui permet de vrifier la qualit dune politique mthodes de rsolution de lquation doptimalit de Bellman
.Le critre le plus courant est ce quon appelle la fonction de qui rclamaient de calculer chaque itration la fonction de
valeur. valeur associe la politique . Ces algorithmes de
programmation dynamique ncessitant la connaissance des
-L'quation d'optimalit de Bellman : On peut exprimer la probabilits de transition et des fonctions de rcompense, des
fonction valeur de la politique optimale, on la note V*. Par mthodes ont t dveloppes permettant destimer au mieux
dfinition, on a : la fonction de valeur V dune politique xe, sur la base des
seules transitions simules en suivant cette politique.

On prfre classiquement lapproche dite de Monte-Carlo,


qui revient simuler un grand nombre de trajectoires issues de
chaque tat s de S, et estimer V (s) en moyennant les cots
observs sur chacune de ces trajectoires. chaque exprience
ralise, lagent mmorise les transitions quil a effectues et
IV. MTHODE DE LA PROGRAMMATION DYNAMIQUE(DP) les rcompenses quil a reues. Il met alors jour une
Nous nous intressons maintenant aux algorithmes qui estimation de la valeur des tats parcourus en associant
permettent un agent dans un PDM d'apprendre une politique chacun deux la part de la rcompense reue qui lui revient.
optimale. Dans le cas de la programmation dynamique, on Au l de ces expriences, la valeur estime associe chaque
suppose connues les probabilits de transition T et la fonction tat converge alors vers la valeur exacte de ltat pour la
de rcompense R. politique quil suit. Lapport principal des mthodes de Monte-
Carlo rside donc dans la technique qui permet destimer la
-Lalgorithme d'itration sur les valeurs valeur dun tat sur la base de la rception de plusieurs valeurs
successives de rcompense cumule associes cet tat lors de
Lalgorithme d'itration sur les valeurs est un algorithme de trajectoires distinctes.
la programmation dynamique dcrit par Bellman [2] qui
consiste en une amlioration itrative de la valeur de chaque On ne s'intresse ici qu' des tches pisodiques. On nomme
tat du PDM . trajectoire la suite d'tats parcourus depuis un tat initial un
tat final. Disposant d'une trajectoire et des retours associs
chaque transition, on peut observer les retours suivants le
passage par chaque tat de la trajectoire. Si l'on dispose d'un
grand nombre de passages par cet tat et d'un grand nombre

2
de trajectoires, la moyenne des retours observs pour chaque
tat tend vers la vraie moyenne. t t +1

Algorithme 2 : Un algorithme de la famille Monte Carlo Jusque st F


Fin pour
Ncessite : une politique
Pour chaque tat s faire
-L'algorithme Q-Learning
Pour j faire
Le Q-learning a t propos par Watkins 1989, repris par S.
Gnrer une trajectoire en suivant la politique pi Sehad [4] comme mthode dapprentissage par renforcement
partir de l'tat s0= s . dans le cas d'un MDP quand le modle dvolution est inconnu.
On note {st,at,rt} la suite des triplets tat ,action C'est une mthode de type off_policy .
,retour immdiat de cette trajectoire .
L'algorithme TD(0) value une politique. Il nous faut
On suppose la trajectoire de taille borne T. maintenant chercher l'amliorer et aboutir une politique
optimale. On pourrait appliquer la technique d'amlioration
v(s0,j) rt de la politique dj rencontre. Cependant, on va adopter ici
une autre stratgie qui fournira un algorithme plus efficace,
Fin pour l'algorithme Q-Learning.

V (s) v(s,j) Algorithme 4 : L'algorithme Q-Learning


Fin pour Q(s,a)0, (s,a) (S,A)
Pour faire
Les mthodes de Monte-Carlo permettent donc destimer la Initialiser l'tat initial s0
fonction de valeur dune politique en mettant jour
t 0
certaines de ses composantes la n de chaque trajectoire
observe. Ces mthodes exigent pour fonctionner quun grand Rpter
nombre de contraintes soient remplies.
Choisir l'action mettre at et l'mettre
Observer rt et st+1
VI. LES MTHODES DIFFRENCES TEMPORELLES (TD)
Les mthodes TD (Temporal Difference learning) sont des
Q (st, at) Q (st, at) + [rt +
combinaisons des ides des mthodes MC et DP et ont t
Q (st+1, a) Q (st, at)]
dveloppes par R. Sutton [3]. Les mthodes Monte Carlo,
consistent (dans le cadre des PDMs) estimer les fonctions t t +1
valeur sans s'appuyer sur un modle mais sur une phase
dexprimentation constitue d'un grand nombre d'pisodes. Jusque st F
Fin pour
De mme les mthodes TDs peuvent apprendre partir de
l'exprience sans avoir besoin d'un modle de l'environnement
mais sans attendre la fin de chaque pisode. Comme la
mthode DP, la mthode TD calcule pendant l'pisode les
nouvelles valuations partir des valuations prcdentes. VII. L'ALGORITHME SARSA
L'algorithme du Q-learning est dit off-policy car la valeur du
-L'algorithme TD prochain tat s est estime sans prendre en considration
l'action excute. L'algorithme Sarsa est dit on-policy car il
Algorithme 3 : L'algorithme TD(0) utilise les actions choisies par la mthode de dcision pour
Ncessite : une politique estimer la valeur du prochain tat s.
V 0
Algorithme 5 : L'algorithme SARSA
Pour faire
Initialiser l'tat initial s0 Q(s, a)0, (s, a) ( S, A )

t 0 Pour faire
Rpter Initialiser l'tat initial s0
Emettre l'action at = (st) t 0
Observer rt et st+1 Choisir l'action mettre at en fonction de la

V (st) V (s) + [rt + V (st+1) V (st)] politique drive de Q ( -gloutonne

3
par exemple) et l'mettre
Rpter
mettre at
Observer rt et st+1
Choisir l'action mettre at+1 en fonction de
la politique drive de Q ( -gloutonne
par exemple)
Q (st, at) Q(st, at) + [rt + Q (st+1, a) Q (st, at)]
t t +1
Jusque st F Figure 4 : Le modle 5 5 de la grille ( gauche)
Fin pour et une politique de marche cyclique ( droite). Les
tats du cycle sont tiquets comme
VIII. PRSENTATION DU ROBOT
Le robot comporte 2 mains commande chacune par un
servomoteur, ce qui permet davancer en avant ou en arrire,
en changeant le sens de rotation des servomoteurs, ainsi
quune carte Arduino et un capteur ultrason.

Tableau 1 : Quatre tats d'une polytique simple


Figure 3 : Un modle du Crawler robot avec ses optimal.
deux joints gx et gy.
Afin d'apprendre une politique optimale * qui va permettre
au robot de marcher en avant, nous utilisons lalgorithme Q-
learning .Cet algorithme fonctionne essentiellement en
attribuant une valeur chaque paire tat-action (s,a) , O
On a ralis un robot avec deux bras tel que dcrit dans la
chaque valeur tat-action Q(s,a) sst une estimation de la
figure 3 et qui va apprendre tout seul marcher juste en
rcompense cumulative attendue.
interagissant avec son environnement.
Le robot est constitu de deux bras qui vont lui donner la
En cas de positions discrtes et de petits angles de
possibilit de marcher en avant, et chaque bras et attache
mouvement des articulations, l'espace d'tat du bras du robot
un servomoteur qui va permettre de changer langle du bras
peut tre approch par une grille. Pour aller de l'avant, le
pour passer dune tat une autre .
robot doit excuter plusieurs reprises un cycle de
mouvements comme le montre la figure 4 ou dans la squence
indique dans le tableau 1. IX. RSULTATS EXPRIMENTAUX
Nous prsentons dans cette partie quelques rsultats
exprimentaux dtermines partir des programmes raliss
avec le langage Python, on va comparer entre les algorithmes
les plus connus de lapprentissage par renforcement SARSA et
Q-Learning en ce qui concerne le nombre ditrations
effectues avant la convergence aussi une autre comparaison
du comportement des algorithmes dans les diffrentes tailles
des grilles et enfin le temps moyen dapprentissage.

4
40 33 En revanche, dans Q-Learning l'agent commence dans ltat
28
Nombre d'itrations
26 1, effectue laction 1 et obtient une rcompense (rcompense 1),
30 21 24 22 puis regarde et voit ce que la rcompense maximale possible
20 pour une action est en tat 2, et utilise que pour mettre jour
10 la valeur de laction d'excuter laction 1 dans ltat 1.
0 Donc, la diffrence est dans la faon dont la rcompense
Grille 7X7 Grille 10X10 Grille 15X15 future se trouve. Dans Q-Learning, il est tout simplement
l'action la plus lev possible qui peut tre pris partir de
Taille de L'environnement l'tat 2, et SARSA il est la valeur de la relle action qui a t
prise.
Q-Learning SARSA Cela signifie que SARSA tient compte de la politique de
contrle par lequel l'agent est en mouvement, et intgre que
dans sa mise jour des valeurs d'action, o Q-Learning
Figure 5 : Diffrence en nombre ditrations suppose simplement que la politique optimale est suivie.
entre SARSA et Q-learning par rapport la taille
de l'environnement X. CONCLUSION
La figure 5 reprsente la diffrence en nombre ditrations Nous avons pu voir comment fonctionne lapprentissage par
effectues avant la convergence de ces deux algorithmes, il est renforcement ses qualits comme ses dfauts. Ainsi que la
claire que lalgorithme Q-Learning apporte une rduction diffrence entre cette mthode dapprentissage et toutes les
importante du nombre ditrations. autres. Mais il ny a pas une mthode dapprentissage mieux
que les autres. Lefficacit de lapprentissage ou encore, de sa
mthode dapplication dpend essentiellement de son
utilisation et du type de traitement que lon veut grer.

XI. RFRENCES

[1] Laetitia Matignon (2009).Synthse dagents adaptatifs et


coopratifs par apprentissage par renforcement. Application
la commande dun systme distribue de micromanipulation.

[2] R.Bellman (1957).Dynamic Programming .Princeton


University Press.

[3] Sutton R.S., and Barto A.G. Reinforcement Learning.


Mit press, Cambridge, Bradford book, 1998, 322 p. ISBN 0-
Figure 4 : Comparaison entre Q-learning et 262-19398-1.
Sarsa selon rcompense et pisode
[4]Sehad S. Contribution l'tude et au dveloppement de
Dans cette figure on compare entre les deux algorithmes en modles connexionnistes a apprentissage par renforcement :
ce qui concerne la rcompense accumul dans chaque itration, application a d'acquisition de comportements adaptatifs. Thse
on voit bien que Q-learning effectue moins ditrations pour gnie informatique et traitement du signal. Montpellier :
maximiser la rcompense. Universit de Montpellier II, 1996, 112 p.

On notera que Q Learning et SARSA se ressemblent


beaucoup. Dans le cas de SARSA la formule de mise jour suit
exactement le choix de l'action (qui n'est pas toujours
optimale). Dans le cas de Q Learning, la formule de mise jour
utilise la valeur optimale des actions possibles aprs l'tat
suivant, alors que comme dans SARSA, l'action choisie aprs
l'tat suivant peut ne pas tre optimale. Cette petite diffrence
entre SARSA et Q Learning rend Q-Learning un peu plus
efficace que SARSA.

En SARSA, l'agent commence dans ltat 1, effectue laction


1, et obtient une rcompense (rcompense 1). Maintenant, il est
dans ltat 2 et effectue une autre action (action 2) et obtient la
rcompense de cet tat (rcompense 2) avant qu'il ne retourne
et met jour la valeur de laction 1 ralise dans ltat 1.

You might also like