• Aucun résultat trouvé

Apprentissage par renforcement

N/A
N/A
Protected

Academic year: 2022

Partager "Apprentissage par renforcement"

Copied!
96
0
0

Texte intégral

(1)

Apprentissage par renforcement

Module « soft-computing »

(2)

Apprentissages

{

Supervisé

{ Symbolique : faits + induction

{ Connexioniste : entrées/sorties + optimisation

{ nécessite : Liste d’exemples

{

Evolutionniste

{ génération évolutionniste de “la solution” + sélection + croisement + mutation

{ nécessite : mesure de la “qualité” (fitness) d’une solution

{

Renforcement

{ Essai/Erreur de la “meilleure prochaine action”

(3)

Historique

{

Psychologues : [Thorndike 1911]

{ Animaux

{ État-action -> récompense ou punition

{ Apprentissage des associations état- action

z Force de la récompense

z Fréquence de la récompense

{

Mathématiciens : [Bellman 1957]

{ Optimisation de stratégie de contrôle

(4)

La Carotte, le baton et le silence

environnement

Perception

Récompenses Action

mémoire

(5)

Apprentissage par renforcement

environnement

Apprentissage par exploration

récompense ou

renforcement but atteint ? perception

actions état

modification

selection

(6)

Apprentissage par renforcement

{

Apprentissage d’interactions avec un environnement

{

Environnement pouvant être dynamique

{

Pas d’exemples “tout fait”

{

Exploration / Exploitation

(7)

Exemple : Tic Tac Toe

{

Joueur parfait ne perd jamais

{

Joueur imparfait “pas logique”

z modèle parfais du joueur (minmax) exclu

(8)

Apprendre le Tic-Tac-Toe

{ Pondérer les états du jeu

z valeur de l’état = récompense

z pondération initiale :

{ 1 pour trois croix alignées

{ 0 pour trois rond alignés

{ 0.5 ou aléatoire pour les autres

{ exploiter : aller vers les états de grande valeur { explorer : partir au hasard

{ apprendre : faire remonter un partie des valeurs de l ’état courant vers les états précédents

(9)

Apprendre le Tic-Tac-Toe

0.5

Q=0.8 0.5

exploitation

exploration : aléatoire

0.8 Q’

apprentissage

Q = Q + α(Q ’-Q )

0.3

Ici c’est de l’apprentissage par différence temporelle

(10)

Variables clés

Actions A (ai, aj …)

Renforcement r (rk, rj ..)

π: stratégie R : gain

Etats

(11)

π : Stratégies(s)

{

Caractérise ce qu’il faut faire ? s->a

{ probabiliste :

z π(s,a) : probabilité de choix (dure/permissive)

{ déterministe :

z π(s) : action, pas une probabilité

{ π* optimale : permet d ’obtenir le plus de gains

z compromis court/long terme , infini ? épisode ?

(12)

π : Stratégie(s)

{

exemple

Stratégie déterministe

actions

Sortie état

Stratégie probabiliste

(13)

R : le gain

• Pas de définition unique

{ Gain au bout d’un certain temps

z Jeu chronométré

{ Gain au bout d’un temps “infini”

= + +

+ + + + =

= T

t i

i T

t t

t r r r r

R

1 2

1 L

Gain cumulé sur horizon fini

Gain cumulé avec intérêt

+

= + +

+ +

+ + + =

=

1

1 3

2 2

1

t k

k t k t

t t

t r r r r

R γ γ L γ

Gain en moyenne

(14)

Influence de la définition du gain

K = 4 et γ=0.9 3 stratégies

+2

+10

+11

3 définitions de gain

= k

t

rt

0

=0 t

t tr

γ

=

k

t t

k r

k 0 lim 1

6 16 2

59

11

0

0 58.4

10

(15)

Le problème de l’exploration

Les machines à sous

(16)

Machine à sous à n bras

z un seul état

z un nombre de tirage fixés

z n bras : n actions a1…an , gain moyen Q(ai)

z chaque bras permet de gagner une somme r distribuée aléatoirement (proba inconnue)

0000

1 n Proba pour 2 bras

0,1

a1 a2

gain

(17)

Machine à sous à n bras

{ Explorer : jouer au pif

{ Exploiter : jouer le meilleur bras estimé

z Estimer l’utilité d’une action a (bras) ?

z Estimation possible seulement après qu’elle soit choisie ka fois :

Gain estimé pour a =Qka(a) = r1+r2+……+rka

z si ka → ∞ alors Qka(a) -> Q(a)

ka

(18)

Définition récursive de Q

k

(a)

k

r r

a r

Q

k

+ + +

k

= ...

)

(

1 2

1

1 1 1

= ∑ +

=+

+

k

Q r

k

i i

k

] [

1 * 1

1

1 k k k

k

r Q

Q k

Q

+ +

=

+

+

]

1

Q .[ erreur Q

k+

=

k

+ α

1

1 1

1

+

= ∑

=

+

+

+

k

r Q r

k

i i t

k

Q

k

Voir page 46

(19)

Problèmes non stationnaires

{

Lorsque Q varie dans le temps

z privilégier les dernières expériences

z problème de convergences

=

+

=

k

i i

i k k

k

Q r

Q ( 1 α )

0 1

α ( 1 α )

(20)

Bien apprendre : explorer/exploiter

{ Taux d’exploration : ε (ε-Greedy methods)

{ ε variable aléatoire (0≤ ε ≤1) probabilité

{ valeur de ε ?

z apprentissage rapide du gain moyen mais moins performant en moyenne versus

z apprentissage lent, prudent, performant à long terme

z si ε est toujours > 0 on parle de politique ε-soft

Jouer le meilleur « greedy action » maxa(Q(a))

Explorer

ε 1-ε

(21)

Explorations plus fines

{ Softmax

z Dépend de Qt(ai)

z plus une action est “valable” plus elle a de chance d’être choisie (distribution de Boltzman, fixer la température ?)

τ→0 : greedy

= n b

b Q a Q

t t

e e

1

/ ) ( / ) (

τ

probabilité τ

de choisir « a »

parmi n actions τ→∞ : equiprobable

(22)

Explorations plus fines

{ Est-ce que l’estimation du gain des actions est pertinente pour fixer la probabilité de choix ?

{ Qu’est ce qu’une bonne action -> référence/aux autres ?

{ Méthode des comparaisons de renforcement

z Dissocier “préférence” et “valeur” d’une action

z la préférence reflète la variation de la différence entre le gain

“moyen” r et celui de l’action concernée

z la probabilité de choix dépend de la préférence

] [

) ( )

1( t t t

t a p a r r

p + = + β

a pt

e

( )

(23)

Explorations plus fines

{ Méthodes de poursuites

z définition récursive de la probabilité de choix de la

“greedy action a”

z pour les autres actions (b)

z doucement, la probabilité de choix de la meilleure

)]

( 1

[ )

( )

1

( a

t

a

t

a

t

π β π

π

+

= + −

)]

( 0

[ )

( )

1

( b

t

b

t

b

t

π β π

π

+

= + −

(24)

Choix d’une méthode

{

Spécifique au problème

{

Explication sur cas simplifiés

z valeur moyenne des renforcements

z différences entre les valeurs moyennes des renforcements

z variance des renforcements

(25)

L’apprentissage de π*

{ Apprendre le modèle de l’environnement.

z Quelles récompenses pour chaque état.

z Quels sont les états atteints pour chaque action.

z Problème : supervisé, complexe, interactions entre états ignorées (état qui mène à l’état qui … donne une récompense).

{ Apprendre avec des “fonctions d’utilité”

z La fonction d’utilité est à rapprocher du gain moyen

z Elle est liée à un état ou un couple état-action

z Elle correspond à une espérance de gain futur

(26)

Fonction d’utilité V(s) (s->ℜ)

{ V(s) Gains que l’on peut espérer à partir de s

{ V*(s) : valeur optimale (inconnue)

{ Vπ(s): valeur pour une stratégie π

z Exemple pour un gain avec intérêt et horizon infini :

{ R s s }

E s

V

π

( ) =

π t t

=

=

=

= + + 0

) 1

(

k

t k

t

kr s s

E s

V π π γ

(27)

Exemple

{

L ’environnement

Renforcements

- bords : -1 - A->A ’ : 10 - B->B ’ : 5

(pour toute action) - ailleurs : 0

A B

A’

B’

actions +5

+10

(28)

Exemple V

π

avec π probabiliste

{ stratégie π : probabilité de choix des 4 directions identique partout π(si,droite) = π(si,haut) = … = 0.25

{ remise : γ=0.9 Vπ

A B

A’

B’

8.8 5.3

1.5

4.4 1.5

3.3

3.0 2.3 1.9 0.5 0.1 0.7 0.7 0.4 -0.4

-1 -0.4 -0.4 -0.6 -1.2 -2 -1.4 -1.2

-1.3 -1.9

+5 +10

(29)

Gain et stratégie optimale

{ V* : gains optimums pour la stratégie optimale π*

V* π*

24.4 19.4

19.8

22 17.5

22

22 19.8 17.8 16

17.8 19.8 17.8 16 14.4 16 17.8 16 14.4 13

13 11.7

14.4 16

14.4

+10

+5 +5

+10

(30)

Fonction d’utilité Q

{ Comme V mais …

z sur une action : Q(a) : a -> ℜ

z sur un couple état/action : Q(s,a) : (s,a) -> ℜ

z Q(s,a) : gains espérés en exécutant a à partir de s.

{ Q* valeur optimale (inconnue)

{ Qπ(s,a) valeur pour une politique π

z Exemple pour un gain avec intérêt et horizon infini :

= =

=

= + + 0

1 ,

) , (

k

k t

kr st s at a

E a

s

Qπ π γ

(31)

Chercher π*

{ Hiérarchie entre stratégies

{ La stratégie optimale est supérieure à toute les autres

{ Il en existe toujours une dans les processus Markoviens

s s

V s

V

ssi ≥ ∀

≥ π ' π ( ) π '( ), π

(32)

Processus Markovien

{ Un état suffit à résumer toute l’histoire du système

{ Une décision peut être prise juste en observant cet état

{ Exemple : situation d’un jeu de dame à un instant donné.

(33)

Chercher π*

{ Connaissance de la dynamique de l ’environnement :

z pas besoin de simulation.

z programmation dynamique : corrélation entre les états (bootstrap)

{ Sans connaissance de la dynamique de l ’environnement :

z simuler (contrôler) et apprendre

{ sans « bootstrap » : Méthode de Monté-Carlo

{ avec « bootstrap » : Temporal Difference Learning

z identification « off-policy »

{ utiliser une politique différente de celle que l ’on recherche

{ permet de rechercher une politique optimale et « dure »

z identification « on-policy »

{ utiliser la politique que l ’on optimise durant l ’optimisation

(34)

Programmation dynamique

{ Connaissance de la dynamique de l ’environnement.

{ MDP (Markov Decision Process),

{ Apprentissage optimal

z équation de Bellman

z V peut être calculé

z V* existe et peut être calculé

z π* existent et peuvent être calculées

a ss'

P

Probabilité de passage de s à s’

R

ssa '

par l ’action a Renforcement lors du passage de

s à s’ par a

(35)

Programmation dynamique : Principe

π0 Vπ0 π1 Vπ1 π*

aléatoire

a ss'

P R

ss'a

E A E

E : évaluation A : amélioration

Utilisation de la corrélation entre états -> bootstrap

(36)

V*, Q* et a* formellement

V*(s) est la meilleure utilité trouvée parmis les stratégies

s s

V s

V*( ) = max π ( ),

π

Partant de st pour une action a menant à s’, le gain espéré est

[

Rs s' V *(s')

]

t +γ

Corrélation inter-état

a s st

P '

L’action a peut mener à différents états s’ avec une probabilité

a*t est l’action qui permettra d’obtenir la meilleure utilité

[

' *( ')

]

'

* ArgMax P R V s at sas s s

t

t +γ

=

(37)

V*, Q* et a* formellement

Si l’on travaille avec Q

a et

s a

s Q a

s

Q*( , ) = max π ( , ),∀ ∀

π

) , (

* *

a s Q

ArgMax

a t

a

t =

(38)

Evaluation d’une stratégie probabiliste

{

R s s

}

E s

Vπ ( ) = π t t =

=

= + +

= r s s

E t k t

k

k

1 0

π γ

+ =

= + +

+

= r s s

r

E t k t

k

k

t 2

0

1 γ γ

π

=

+

= + + +

=

( , )

2 1 '

0 '

'

' R E r s s

P a

s t k t

k

k a

ss

a s

a

ss γ γ

π π

[

( ')

]

) ,

( '

'

' R V s

P a

s ssa

a s

a ss

γ π

π +

=

∑ ∑

Vπ(s) peut être calculé à partir d’une estimation de Vπ(s’)

(39)

Evaluation d’une stratégie probabiliste

{

On peut approximer itérativement V

{

Point fixe :

{

Stratégie déterministe : {

r V s s s

}

E s

Vk+1( ) = π t+1 +γ k( t+1) t =

V

π

V

k

=

[

( ')

]

) , ( )

( '

' '

1 s s a P R V s

V ssa k

a s

a ss k

γ π

π +

=

∑ ∑

+

(40)

La meilleure action : vers une stratégie déterministe

) , ( )

(s ArgMax Q s a

a

π

= π

{

r V s s s a a

}

E

ArgMax t t t t

a

=

= +

= π +1

γ

π ( +1) ,

[

'

( ' ) ]

'

'

R V s

P

ArgMax

ssa

s

a ss a

γ

π

+

= ∑

(41)

Programmation dynamique

Modèle de l ’environnement

a

P

ss'

R

ssa '

)]

' ( [

) , ( )

(

'

s V a

s s

V

a s

π π π = π Pss'π(s) Rss'(s) +γ

πn π0 aléatoire

itérations

stabilisation : Vπ

evaluation de la stratégie

« bootstrap »

amélioration de la stratégie

)]

' ( [

max arg )

(

'

s V

s a

s a a

γ π

π = Pss' Rss' +

(42)

Programmation dynamique, l ’algo complet (stratégie déterministe)

--- 1.Initialization

V(s) ∈ℜ, π(s) ∈A(s) arbitrairement pour tout s∈S --- 2. Evaluation de la stratégie

Repeat

∆←0For each s∈S

v←V(s) V(s) ←

∆←max(∆,|v-V(s)|) until ∆<θ (a small positive number)

--- 3. Amelioration de la stratégie

policy-stable←true For each s∈S

b← π(s)

π(s) ← arg maxa

)]

' ( [

'

s V

s

γ

π

π +

Pss'(s) Rss'(s)

)]

' ( [ a V s

a +γ

Pss' Rss'

Bootstrapping :

Corrélation entre états

(43)

Quand l’environnement est inconnu

{

Différents algorithmes

{

Doivent effectuer 2 fonctions :

z Evaluation (prévision)

{ bootstrap ou moyenne ou les deux

z Contrôle (simulation) en apprenant

{ implémentation réelle

(44)

Méthode de Monte-Carlo

{ Plus de connaissance de

{ Estimation de l’espérance de gain par expérience et moyennage

{ Plus de corrélation entre états

z recherche plus lente

a ss'

P R

ssa '

{

R s s

}

E s

Vπ ( ) = π t t =

(45)

Méthodes de Monte Carlo : off-policy

Choix aléatoire d ’une stratégie π

et de Q.

Jouer l ’épisode πn

nouveau Q

Contrôle du système évaluation « soft » de la stratégie

(sur un épisode) Q(s,a) = moyenne des

renforcements (par s,a)

π(s) = arg maxa Q(s,a) amélioration de la stratégie

(46)

Temporal-Difference ou TD- Learning

{ Prise en compte de la corrélation inter-état de la programmation dynamique = plus rapide

{ Calcul itératif de la fonction d’utilité :

{ V(s) ←V(s)+α[Rt-V(s))]

{ Qk+1= Qk+ α[erreur]

{ le calcul partiel des méthodes de MC (moins lourd)

{ naturellement en-ligne

{ pas de preuves de convergence mais fonctionne dans

(47)

Evaluer l’utilité itérativement, exemple pour Q

ka r r

a r

Qt = + +...+ ka )

( 1 2

1

1 1 1 =

+=+

+ k

Q r

k

i i

k

] [

1 *

Q r

Q

Q = +

1

1 1

1 +

=

= + +

+ k

r Q r

k

i i t

k

Qk

( )

1 1

)

* ) 1 (

* ) 1 (

* ( ) 1 (

*

) (

* 1

* )

1 (

*

* 1 1 1 1

1 + +

+

+

+

= + + +

= + +

= = + + + +

+

k r k

Q k

Q k

Q k k

k r k k

Q k k

k

r r

k k t k k k t

k

i i t

Qk

1 1

)

* ) 1 (

*

( 1

1 + +

+ + +

= +

+ k

r k

Q k

Q Q k

Qk k k k t

(48)

Programmation dynamique -> TD learning

{ Programmation dynamique :

{ TD learning : approximation

{ V(s) ←V(s)+α[r+γV(s’)-V(s)]

{ Idem pour Q :

{ Q(st,at) = Q(st,at)+α*[rt+1+γ*Q(st+1,a)-Q(st,at)]

{

r V s s s

}

E s

Vk+1( ) = π t+1 +γ k( t+1) t =

Interêt du aux horizon non bornés + Inter-corrélation

(49)

Sarsa : On-Policy

(st, at, rt+1, st+1, at+1)

Apprentisage de Q(s,a)

Choix aléatoire : Q et s choix de a par Q (soft)

D ’après Q (soft car « on-policy ») appliquer a, observer r et s ’ choisir a’ (d ’après Q et s’)

Q(s,a) = Q(s,a) + α[r+γ Q(s’,a’)-Q(s,a)]

s = s’ ; a = a’

Contrôle du système

Amélioration de la stratégie

(50)

Q-learning : off-Policy

Choix aléatoire : Q et s

D ’après Q (rendu « soft» temporairement) choisir a, observer r et s ’

Q(s,a) = Q(s,a) + α[r+γ maxa’Q(s’,a’)-Q(s,a)]

s = s’

Contrôle du système

amélioration de la stratégie

Pas la stratégie

(51)

Performance :

Q-learning/Sarsa

{

Très difficile

z Problème dépendant

(52)

Actor-Critic Methods On-Policy

Politique

Environnement V

acteur

critique

erreur

correction

δt+1 = rt+1- (V(st) - γV(st+1)) États

st

st+1 rt+1 renforcement

Exemple : softmax (+ou- sur proba action)

renforcement espéré

action

(53)

R-Learning

{

Cas particulier de problèmes

z Apprentissage continu (sans fin)

z Mais sans remise (pas de γ)

{

Pas de sommation des remises

{

Prise en compte de la dérivée de

l ’erreur

(54)

TD(λ) : aspects temporels et environnements dynamiques

Monté-Carlo TD(0) : sarsa

épisode

Optimisation : Moyenne des ri

épisode

t0 t1 t2 t3 t4 t0

t1 t2

.. Optimisations :

ri + prévision précédente

Rapide/moins précis Lent/précis (si env pas dyn)

(55)

TD(λ) : SARSA(λ), Q(λ),

t0 t1 t2 t3 t

Optimisation sur

tous les r précédents, mais pondération sur les

Q(s,a) les plus récents

instant présent

4

(56)

e(t) trace d ’elligibilité d ’un état (ou état-action)

• Sorte de facteur d’oubli

• Deux possibilités : accumulation ou replacement accumulation replacement

e(t)

1

0

(57)

SARSA(λ) : l ’algo complet (en cadeau gratuit)

--- Initialize Q(s,a) arbitrarily and e(s,a)=0, for all s,a Repeat (for each episode)

Initialize s,a

Repeat (for each step of episode) Take action a, observe r, s’

Choose a’ from s’ using policy derived from Q (e.g., ε-greedy) δ ← r + γQ(s,a ’) - Q(s,a)

e(s,a) ←e(s,a)+1 For all s, a:

Q(s,a) ← Q(s,a) + α δ e(s,a) e(s,a) ← γλe(s,a)

s ←s’; a ←a’

until s is terminal

Ça c’est intéressant accumulation

(58)

Sarsa(λ) sur un labyrinthe

{

Les premiers pas sont utilisés pour évaluer Q

*

* *

Sarsa(λ)

chemin Sarsa

(59)

TD( λ)

{ Autres algorithmes

z Q(λ) (2 versions)

z « Elligibility Traces for Actor-Critic Methods »

z Ecrêtage de e (états trop visités)

{ Implémentation

z assez lourde (mémoire+temps)

z heuristiques bidouillantes

z facilement distribuable

(60)

Généralisation et approximation

{

Trop de données

z états

z Actions

{

Regrouper

z généraliser

z en apprenant

(61)

Généralisation

{

Fonction-Valeur dépend de paramètres

{

{

Bien moins de paramètres que d ’états

{

descente de gradient : en apprentissage :

)

t

r θ ( V

[ ]

2

1 ( ) ( )

2 1

t t t

t

t V s V s

t

+ = π

α θ

θ

θr r r

(62)

Descente de gradient Principe

Vπ ou estimation

erreur d(erreur)

dt

Mise à jour θ

F (S, θ) V S

θ

(63)

Deux méthodes éprouvées

{

Réseaux de Neurones Artificiels

{

Méthodes linéaires

θ S V

s T s t

s

V ( ) = θ r φ r

θφ

V

r

S

(64)

Méthodes linéaires

{

Rapport qualité-prix !!

{

φ : caractéristiques des états

z tache critique

{

exemple coarse coding

z chaque cercle est un φi (taille de θ = nb cercles)

0

1 4

φ0=1 φn=0

S est continu (2D)

(65)

Méthodes linéaires

{

Tile coding (carrelage)

{

Radial Basis Functions

z φ n ’est pas binaire

z méthode de structuration

carrés

logarithmes ...

⎟ ⎞

⎜ ⎛ −

=

2

exp )

( s ci

φ i

(66)

Méthodes linéaires

{

La voiture

x x

10 grilles décalées

Goal

Actions : accélèration avant(1), arrière(-1), nulle(0) x =bound[x +x ]

(67)

Résultats apprentissage et généralisation

{

Par replacement d’éligibilité

800 λ=1

λ=0.99

λ=0 λ=0.9

λ=0.4

400

α

(68)

Pour en savoir plus : en annexe

{

Karneva coding

{

apprentissage de planification

{

Dyna-Q algorithme

{

Prioritized Sweeping

z Manœuvres dans un labyrinthe

{ 14 400 états potentiels * 4 actions

{ pas tous scrutés bêtement

(69)

Les problèmes à résoudre

{

Nb couples état-action

{

Convergence

{

Hiérarchisation des actions

{

Sémantisation des actions

¾

Systèmes de classifieurs (C.Buche).

(70)

Bibliographie

{ Thorndike, Animal Intelligence, 1911.

{ Bellman, Dynamic Programming, 1957.

{ Richard S.Sutton and Andrew G.Barto, Reinforcement Learning, MIT Press, 2000.

{ Cédric Sanza, Evolution d ’entités virtuelles

cooperatives par système de classifieurs. These de doctorat de l ’université de Toulouse, 2001.

{ Apprentissage automatique et évolution artificielle, revue extraction des connaissances et apprentissage, Volume1, n°3, éditions hermes, 2001.

{ Algorithmes d ’apprentissages et applications, revue d ’intelligence artificielle, volume 14, n°3, édition hermes, 2000.

{ Antoine Cornuéjols et Laurent Miclet, Apprentissage artificiel, concepts et algorithmes, éditions Eyrolles, 2002.

(71)

Annexes

(72)

Rappels

{

Approche supervisée : retour instructif, indique la bonne solution.

{

Renforcement : retour évaluatif, on ne sait pas quelle est la bonne

{

Il faut une exploration “active”

{

Plein de stratégies : exemple de la

machine à sous à n bras

(73)

Apprentissage supervisé

Modèle à paramétrer RdN,

entrées résultat

entrées résultat

Algorithme d’apprentissage

paramètres

(74)

Sarsa : estimation des Q(s,a) On- Policy TD

{

On évaluent tous les Q (s,a)

pendant la simulation, on en déduit

une politique en même temps...

(75)

Avantage de Sarsa sur MC

{

Si il y a une impasse sarsa diminue le Q(s,a) qui ne sera bientôt plus

choisi car sarsa apprend pendant l ’épisode

{

MC resterait dans l ’impasse

{

exemple 6.4 de Reinforcement

learning An introduction (Sutton

2000)

(76)

Propriété markovienne

{

Distribution de proba de s

t+1

et r

t+1

{ Pr{st+1 = s’, rt+1=r | st,at,rt, st-1,…r1,s0,a0} (1)

{ Si elle ne dépend que de l’instant présent

{ Pr{st+1 = s’, rt+1=r | st,at} (2)

{ les états ont une propriété markovienne si (1) = (2)

{ ?

(77)

Programmation dynamique

{

Optimisations

z algorithme d ’itération des valeurs

{ calcul de Vk+1(s) (et non d ’évaluation des politiques)

{ puis une seule opération pour obtenir la politique optimale

z Programmation dynamique asynchrone

{ pour les gros espaces d ’état

{ on ne calcul Vk+1(s) que pour un état à chaque fois

(78)

Programmation Dynamique

{ Calculs coûteux (mémoire/temps)

{ Dynamique de l ’environnement

{ Généralisation aux politiques probabilistes choix de plusieurs actions par état défini par π(s,a)

{ Temps polynomial (n états et m actions)

z alors qu ’il y a mn solutions potentielles

(79)

Méthode de Monte-Carlo: l ’algo complet

--- 1.Initialization

for all s∈S, a∈A(s) :

Q(s,a) ←arbitraire

Returns(s,a) ← liste vide

π ← une politique arbitraire ε-soft policy --- 2. Evaluation de la politique

Repeat forever

(a) Generate an episode using π

(b) for each pair s,a appearing in the episode:

R ←return following the first occurrence of s,a Append R to Returns(s,a)

Q(s,a) ← average(Returns(s,a)) (c) for each s in the episode:

a* ← arg maxa Q(s,a) For all a ∈A(s) :

1-ε+ ε/|A(s)| if a=a*

(80)

Principe des algorithmes de type TD-learning

{

Estimation d ’une politique V

π

:

--- 1.Initialisation : V(s) arbitraire, π poitique à évaluer Repeat(for each episode) :

Initialize s

Repeat(for each step of episode):

a← action given by π for s

Take action a; observe reward r and next state s’

V(s) ←V(s)+α[r+γV(s’)-V(s)]

s ←s’

until s is terminal

(81)

Annexe : Définition récursive de Q(a)

ka r r

a r

Qt = + +...+ ka )

( 1 2

1

1 1 1 =

+=+

+ k

Q r

k

i i

k

] [

1 *

Q r

Q

Q = +

1

1 1

1 +

=

= + +

+ k

r Q r

k

i i t

k

Qk

( )

1 1

)

* ) 1 (

* ) 1 (

* ( ) 1 (

*

) (

* 1

* )

1 (

*

* 1 1 1 1

1 + +

+

+

+

= + + +

= + +

= = + + + +

+

k r k

Q k

Q k

Q k k

k r k k

Q k k

k

r r

k k t k k k t

k

i i t

Qk

1 1

)

* ) 1 (

*

( 1

1 + +

+ + +

= +

+ k

r k

Q k

Q Q k

Qk k k k t

(82)

Méthodes linéaires

{

complexité≈

{

Kanerva coding

z séparation dimension de S/complexité de V

z plus de dimension : codage binaire des états

z distance de hamming pour les regroupements

z travaux en cours

e

nb dimension deS

(83)

Apprentissage et Généralisation

{

Etudes expérimentales : algo de type Sarsa et Q-learning plus

stables

z Linear gradient-descent Sarsa(λ)

z Linear gradient-descent Q(λ)

{

RDN : à voir, il me semble que

c ’est très chaud de faire bosser en

parallèle deux algos comme ça.

(84)

Planification et apprentissage

{

Planifier

z i.a. classique : modèle + cognition

z ici : améliorer Q (ou V) par

l ’évaluation d ’un modèle + simulation du modèle

V, politique

experience model

planification action

RL

(85)

Modèle déterministe

{

Pour un couple (s,a) donné le

renforcement est toujours le même

z Labyrinthe

{

Dyna-Q algorithme

Q-learning Q

Model-learning Modèle env= Simulation

aléatoire

parmi les situations mémorisées

Q-learning ’

(86)

Modèle en évolution

{

heuristique de Dyna-Q+

z si un couple(s,a) n ’a pas été rencontré depuis longtemps, lui attribuer un

renforcement espéré + grand pour obliger le système à explorer

Références

Documents relatifs

§ Effort sur le coût de conception (ingénierie) des logiciels ñ Degré d’intervention de l’humain dans la conception.

Pour cela, nous présentons les résultats d’un benchmark réalisé sur 20 jeux de données qui compare une stratégie apprise selon la méthode proposée dans (Konyushkova et al.,

Par la suite, nous avons abordé deux algorithmes d’apprentissage par renforcement utilisés dans le chapitre 3, le Q-Learning qui utilise une tableau-Q pour trouver les

• biais important: hommes petits et femmes grandes (erreur d'approximation). • variance faible: seuil de taille

Si l’on maintient des estimations des valeurs d’actions, on peut toujours sélectionner l’action dont l’estimation est la plus grande, que nous appelons l’action « gloutonne 3

Dans le cas de Q Learning, la méthode est presque on-line: la formule de mise à jour utilise la valeur optimale des actions possibles après l'état suivant, alors que comme dans

When the environment model is updated, Rmax computes the optimal value fonction V* for this model with the value iteration algorithm.. The environment model is

• biais important: hommes petits et femmes grandes (erreur d'approximation). • variance faible: seuil de taille