• Aucun résultat trouvé

2.5 Méthodes des diérences temporelles

2.5.1 Q-learning

Cet algorithme est sûrement l'un des plus utilisés dans la communauté de l'apprentis- sage par renforcement en raison de sa simplicité, de sa robustesse et des preuves formelles de sa convergence dans les PDM. Le Q-learning, introduit par Christopher J.C.H. Wat- kins [Wat89], est une adaptation de value iteration (algorithme1) qui remplace la mise à jour utilisant T et R par une mise à jour utilisant le principe de la diérence temporelle. Comme nous l'avons vu précédemment, l'objectif est d'optimiser la fonction de valeur pour chaque couple état-action an d'en déduire une politique optimale. L'algorithme Q-learning génère donc une suite de fonctions Q qui convergent vers Q∗.

Mise à jour

A chaque période d'échantillonnage t, l'agent eectue une action a depuis un état s ; il se retrouve alors dans un nouvel état s0 et reçoit une récompense r. L'agent dispose

alors des informations courantes s, a, s0et r pour mettre à jour la fonction de valeur pour

le couple état-action (s, a). La nouvelle estimation de la valeur d'un couple état-action (s, a) est notée Qt+1(s, a). Elle se partage entre l'estimation précédente et un facteur

correctif selon :

Qt+1(s, a) = Qt(s, a) + δ. (2.17)

Ce facteur correctif noté δ est appelé diérence temporelle et correspond à la diérence entre l'amélioration et l'ancienne estimation de la fonction de valeur Q(s, a). L'ancienne estimation est notée Qt(s, a). Pour l'amélioration, on reprend l'équation de mise à jour

de value itération (2.16). La correction s'exprime alors par : δ =amélioration − ancienne estimation

= X s0∈S T (s, a, s0)  R(s, a, s0) + γ max b∈A Qt(s 0 , b)  − Qt(s, a). (2.18)

Si l'environnement est déterministe, la correction est alors : δ = r + γ max

b∈A Qt(s

0, b) − Q

t(s, a) (2.19)

An d'approximer la  vraie  correction et de s'aranchir de l'utilisation des fonctions T et R, on introduit dans la correction exprimée en environnement déterministe un facteur αpour prendre en compte le cas non-déterministe. α signie que s0n'est pas l'unique état successeur possible pour le couple (s, a). Au nal, le Q-learning met à jour la fonction de valeur en utilisant les informations courantes à chaque période d'échantillonnage s,

Algorithme 2 : Algorithme du Q-learning

début

Initialiser Q(s, a) arbitrairement pour tout (s, a) de S × A Initialiser l'état initial s

tant que s n'est pas un état absorbant faire a ←Décision(Q, s)

Exécuter l'action a et observer le nouvel état s0et la récompense r Q(s, a) ← (1 − α)Q(s, a) + α  r + γ max b∈AQ(s 0 , b)  s ← s0 n a, s0 et r selon : Qt+1(s, a) ← Qt(s, a) + αδ ← Qt(s, a) + α  r + γ max b∈A Qt(s 0, b) − Q t(s, a)  ← (1 − α)Qt(s, a) + α  r + γ max b∈A Qt(s 0, b)  (2.20) α ∈]0; 1]est appelé taux d'apprentissage.

De là, on en déduit l'algorithme du Q-learning présenté à l'algorithme 2. Cet algo- rithme ne stocke que la fonction de valeur Q. Couramment, un tableau de dimension |S| × |A| est utilisé. Les valeurs de cette table sont les évaluations courantes de chaque couple état-action.

Convergence

On peut prouver que sous certaines conditions, l'algorithme du Q-learning converge vers la solution optimale Q∗. Ces conditions sont [JJS94] :

 que S et A soient nis,

 que tous les couples état-action du PDM soient visités un nombre inni de fois,  que (αn) satisfasse les hypothèses suivantes :

X n αn(s, a) = ∞ et X n α2n(s, a) < ∞, (2.21)  que 0 ≤ γ < 1.

Ces hypothèses sont assez fortes. Ainsi, en théorie, α doit décroître à chaque nouveau passage par le couple état-action (s, a). En pratique, pour éviter de stocker des infor- mations supplémentaires ou pour que l'apprentissage soit permanent (par exemple pour s'adapter à un changement de dynamique du système), on utilise un coecient xe. La valeur couramment utilisée est α = 0, 1. Ainsi, même si certaines hypothèses ne sont pas complètement vériées, on observe que l'algorithme se comporte de manière très robuste et converge vers des stratégies quasi-optimales.

Une autre hypothèse de convergence exige que tous les couples état-action soient visités un nombre inni de fois. En pratique, une exploration partielle est généralement susante. Il faut alors faire la balance entre l'exploration et l'exploitation.

Méthode de décision : dilemme exploration-exploitation

La fonction Décision permet de choisir une action dans chaque état. Cette fonction de décision de l'action doit donc trouver un compromis entre l'exploitation, qui consiste à choisir les actions gloutonnes (cf. dénition 2.3), et l'exploration, qui consiste à choisir une action au hasard. Tant que l'agent n'a pas exploré la totalité de son environnement, il n'est pas certain que sa politique gloutonne (cf. dénition 2.4) actuelle soit optimale. L'exploration permet donc d'approfondir ses connaissances pour améliorer la récompense cumulée, mais au risque d'une perte de temps si la politique optimale a été trouvée et si l'agent explore trop. Il faut ainsi faire la balance entre exploitation et exploration.

Le compromis couramment utilisé consiste à choisir l'action gloutonne la plupart du temps tout en explorant plus ou moins souvent. On classe les méthodes de décision en deux catégories : les méthodes dirigées et non-dirigées. Les méthodes non-dirigées utilisent uniquement les valeurs courantes de la table Q pour décider de l'action. Deux méthodes non-dirigées sont couramment employées :

 méthode -greedy8 : Cette méthode de décision n'utilise qu'un paramètre  et

choisi une action au hasard avec une probabilité  et l'action gloutonne avec une probabilité 1 − . S'il existe plusieurs actions gloutonnes dans un état, le choix sera aléatoire parmi celles-ci. Souvent, le paramètre  est choisit égal à 0, 1 an de satisfaire le compromis exploration-exploitation.

 méthode softmax : Cette méthode assigne une probabilité à chaque action pos- sible en fonction de sa Q-valeur. La probabilité de sélection d'une action a dans un état s est calculée selon une distribution de Boltzmann :

π(s, a) = e Q(s,a) τ P b∈Ae Q(s,b) τ (2.22) où τ est un paramètre de température. Plus τ est grand et plus le choix des actions sera équiprobable et donc le taux d'exploration important. Si τ est proche de zéro, la probabilité associée à l'action de plus forte valeur sera la plus importante ; on s'approche donc d'une exploitation.

Dans ces méthodes, les paramètres  et τ permettent de déterminer le niveau d'explo- ration. Le choix de ces paramètres est appelé stratégie d'exploration. Par exemple, une stratégie d'exploration stationnaire consiste à attribuer une valeur xe au paramètre  ou τ. Une troisième méthode non-dirigée consiste à initialiser à de fortes valeurs les Q-valeurs pour favoriser l'exploration. Cette méthode sera expliquée plus en détail dans le chapitre3.

Les méthodes dirigées utilisent des informations supplémentaires pour guider l'explo- ration. Par exemple, des bonus d'exploration peuvent être calculés [RP03]. Ce sont des heuristiques basées sur des informations acquises au cours de l'apprentissage. Ils vont encourager le contrôleur à favoriser certaines actions [Thr92, MB99]. Par exemple, le nombre de fois où une action a été eectuée dans un état peut être mémorisé pour favo- riser les actions les moins fréquemment utilisées. Ou encore, le contrôleur peut préférer choisir les actions pour lesquelles la valeur de la fonction Q change le plus en calculant la diérence absolue entre deux approximations successives des Q-valeurs. Les méthodes d'exploration dirigée sont d'autres exemples basés sur les actions les moins récentes ou sur celles dont la Q-valeur a la plus grande variance.