Formulaire d’apprentissage par renforcement
Rémi Coulom
14 novembre 2008
1 Définitions et notations
1.1 Processus de décision de Markov
Un processus de décision de Markov est défini par
un ensemble Sd’états ;
pour chaque sS, un ensemble A(s)d’actions ;
une fonction νde S×A(s)dans Squi à chaque paire
(état, action) associe l’état suivant s0=ν(s, a)(νpeut
être stochastique) ;
– une fonction rde S×A(s)dans Rqui à chaque
paire (état, action) associe une récompense réelle r(s, a)
(rpeut être stochastique) ;
un coefficient réel γ[1 : 1].
On dit qu’une fonction est stochastique lorsque son résul-
tat est aléatoire, avec une distribution de probabilité qui ne
dépend que de ses paramètres.
1.2 Politique
Une politique πest une fonction de Sdans A. Un politique
peut être stochastique.
1.3 Trajectoire
À partir d’un état initial s0S, l’application d’une poli-
tique πproduit une suite d’actions (at), d’états (st)et de ré-
compenses (rt)définis par at=π(st),rt=r(st, at), et
st+1 =ν(st, at).
Dans la suite de ce formulaire, dès que des variables avec
des indices apparaissent dans une équation, on supposera im-
plicitement qu’elles sont définies par ces formules de récur-
rence, si elles ne sont pas définies par ailleurs.
1.4 Fonction valeur d’état V
Pour une politique π, on définit sa fonction valeur, notée
Vπpar
Vπ(s0) = E
X
t=0
γtrt
Il existe une (ou plusieurs) politique(s) optimale(s) notées π
qui vérifie(nt) Vπ(s)Vπ(s)pour tout set tout π.Vπne
dépend pas de πet est notée V.
1.5 Fonction valeur d’action Q
La fonction valeur d’action d’une politique πest définie
par :
Qπ(s0, a0) = E
X
t=0
γtrt,
Pour une politique optimale π, on note Qsa fonction valeur
d’action.
1.6 Identités remarquables
1.6.1 Relations entre Vet Q
Vπ(s) = EQπs, π(s)
Qπ(s, a) = Er(s, a) + γV πν(s, a)
1.6.2 Equation de Bellman
Pour une politique πfixée :
Vπ(s0) = Er(s0, a0) + γV π(s1)
Qπ(s0, a0) = Er(s0, a0) + γQπ(s1, a1)
Pour la politique optimale :
V(s0) = max
a0A(s0)Er(s0, a0) + γV (s1)
Q(s0, a0) = Er(s0, a0) + γmax
a1A(s1)Q(s1, a1)
1.7 Politiques gloutonnes
Pour une fonction valeur d’état Vdonnée, on définit une
politique gloutonne par
π(s) = arg max
aA(s)Er(s, a) + γV ν(s, a).
Pour une fonction valeur d’action Qdonnée, une politique
gloutonne est définie par
π(s) = arg max
aA(s)Q(s, a).
Notons que définir une politique gloutonne sur Vnécessite
de connaître les fonctions ret ν, alors qu’une politique glou-
tonne sur Qne demande aucune connaissance du processus
de Markov.
1
2 Algorithmes tabulaires
Chacun des algorithmes décrits dans cette section se base
implicitement sur l’utilisation d’une politique π. Ces al-
gorithmes travaillent sur des tableaux de valeurs V(s)ou
Q(s, a)(ce qui suppose que le nombre d’états et d’actions
sont finis). Pour simplifier les notations, on écrira ~
Vou ~
Q
pour représenter le vecteur des élements du tableau.
Algorithm 1 Value iteration
~
V0~
0
i0
repeat
ii+ 1
for all s0Sdo
Vi(s0)Er(s0, a0) + γVi1(s1)
end for
until Vhas converged
Cet algorithme calcule la valeur de π. Si πest gloutonne
par rapport à Vi1, alors cet algorithme calcule V. La con-
vergence de cet algorithme est garantie si |γ|<1. Lorsque
|γ|= 1, l’algorithme ne converge que si la fonction valeur est
bien définie. Cet algorithme nécessite de connaître le système
(ret ν).
Algorithm 2 Qlearning
~
Q~
0
s0initial state
t0
loop
δrt+γmaxaA(st+1)Q(st+1, a)Q(st, at)
Q(st, at)Q(st, at) + αδ
tt+ 1
end loop
Cet algorithme apprend Qen suivant les trajectoires d’une
politique π. Pour que l’algorithme converge, il faut que
chaque paire état, action soit visitée un nombre infini de fois.
En pratique, on utilise souvent un politique -gloutonne pour
π.αest un paramètre de l’algorithme. C’est un réel positif.
L’intérêt essentiel du Qlearning est de ne pas nécessiter la
connaissance des fonctions ret ν. Il suffit à l’agent d’intera-
gir avec son environnement et d’observer les conséquences de
ses actions, sans connaître un modèle de la dynamique et des
récompenses.
La variable δintroduite dans l’algorithme précédent s’ap-
pelle la différence temporelle. C’est le signal d’erreur qui
guide l’apprentissage. δ > 0indique une bonne surprise,
c’est-à-dire que la récompense obtenue est supérieure à la ré-
compense attendue. Inversement, δ < 0indique une mauvaise
surprise.
Le principe des algorithmes TD(λ) et Sarsa(λ) est que
l’erreur est reportée plusieurs pas en arrière dans le temps,
avec un amortissement exponentiel réglé par le paramètre
λ[0,1].
Algorithm 3 TD(λ)
~
V~
0
~e ~
0
s0initial state
t0
loop
δrt+γV (st+1)V(st)
~e λγ~e
e(st)e(st)+1
~
V~
V+αδ~e
tt+ 1
end loop
TD(λ) apprend Vπ. Si πest gloutonne par rapport à V,
il apprend V. Utiliser une politique gloutonne par rapport à
Vnécessite de connaître ret ν.~e est le vecteur des traces
d’éligibilité.
Algorithm 4 Sarsa(λ)
~
Q~
0
~e ~
0
s0initial state
t0
loop
δrt+γQ(st+1, at+1)Q(st, at)
~e λγ~e
e(st, at)e(st, at)+1
~
Q~
Q+αδ~e
tt+ 1
end loop
Sarsa(λ) est typiquement utilisé avec une politique -
gloutonne par rapport à l’estimation courante de Q. L’algo-
rithme n’apprend pas la valeur de la politique optimale, mais
la valeur de la politique -gloutonne, qui est légèrement in-
férieure en général. C’est la différence fondamentale avec le
Q-learning, qui apprend toujours Q. Cependant, Sarsa(λ) est
souvent plus efficace grace aux traces d’éligibilité.
3 Approximateurs paramétriques
Les algorithmes TD(λ) et Sarsa(λ) peuvent être formulés
pour utiliser des approximateurs de fonction paramétriques
plus généraux que les tables, comme les réseaux de neurones.
On remplace alors ~
Vou ~
Qdans les algorithmes par le vecteur
de paramètres ~w. Les traces d’éligibilité sont alors mises à
jour de la façon suivante :
~e ~e +V
w
ou
~e ~e +Q
w
On remarque que le cas tabulaire est un cas particulier de cette
équation.
2
1 / 2 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !