Policy Evaluation
Qu’est-ce que la policy evaluation ?
La policy evaluation consiste à calculer la valeur d’une politique donnée.
Informellement : si l’agent suit cette politique, quelle récompense moyenne peut-il espérer ?
On cherche donc à calculer la fonction de valeur :
- : la policy/politique
- : la valeur d’un état en suivant la politique .
- Optionnellement : : la valeur d’état-action.
Pourquoi évaluer une politique ?
Avant de vouloir améliorer une politique (policy improvement), il faut savoir si elle est bonne.
La policy evaluation permet :
- d’estimer combien la politique rapporte en moyenne ;
- d’identifier les états bons/mauvais ;
Équations de Bellman
La valeur d’un état sous la politique est définie par :
Ce que ça veut dire :
- On suit ce que la politique dit de faire ().
- On regarde les transitions possibles.
- On ajoute la récompense immédiate + la valeur future.
Méthodes pour faire la policy evaluation
1 Approche exacte : Iterative Policy Evaluation
On applique l’équation de Bellman en boucle jusqu’à convergence.
Pseudo-code :
initialiser V(s) = 0 pour tout s
répéter
pour chaque état s :
V_new(s) = somme_a π(a|s) * somme_s' P(s'|s,a) * [R(s,a,s') + γ V(s')]
remplacer V par V_new
jusqu’à convergence
2 Monte-Carlo Policy Evaluation
On fait plusieurs épisodes :
- on suit la politique ,
- on regarde le retour observé,
- on moyenne les retours pour estimer V.
Adapté lorsque le modèle (transition, récompenses) n’est pas connu.
Résumé simple
| Terme | Signification |
|---|---|
| Politique (π) | Règles de décision de l’agent |
| Policy Evaluation | Calculer combien rapporte cette politique |
| Méthodes | Bellman, Monte-Carlo |
| Utilité | Base de la policy iteration et de l'amélioration des politiques |
Exemple
1) Rappel (formule utilisée — horizon fini)
On utilise la version horizon fini (avec discount) : si est la valeur avec h étapes restantes et ,
où est l’état déterministe résultant de .
Paramètres utilisés :
- états = {North, East, South, West}
- actions = {clock, anti-clock, stay}
- = 0.9
- horizon (H = 10)
- politique (uniforme)
2) Exemple de calcul manuel (pour h=1, état North)
Pour vérifier la formule :
-
transitions depuis North :
clock→ East, (R=2)anti-clock→ West, (R=2)stay→ North, (R=-2)
Avec :
(Ça colle avec les calculs programmés ci-dessous.)
3) Résultats (valeurs pour h = 0..10)
| h | North | East | South | West |
|---|---|---|---|---|
| 0 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| 1 | 0.6667 | 4.6667 | 1.6667 | 3.3333 |
| 2 | 3.2667 | 6.7667 | 4.5667 | 5.0333 |
| 3 | 5.1867 | 9.0467 | 6.5767 | 7.1933 |
| 4 | 7.0947 | 10.9097 | 8.5117 | 9.0203 |
| 5 | 8.7741 | 12.6215 | 10.1992 | 10.7213 |
| 6 | 10.2368 | 14.1881 | 11.6479 | 12.2011 |
| 7 | 11.5032 | 15.6288 | 12.8769 | 13.4774 |
| 8 | 12.9090 | 16.7549 | 14.3375 | 14.8503 |
| 9 | 14.0209 | 17.8671 | 15.4495 | 15.9624 |
| 10 | 15.0218 | 18.8679 | 16.4504 | 16.9632 |
La colonne h donne le nombre d’étapes restantes. La dernière ligne est donc (valeur attendue en suivant uniforme pendant 10 étapes).
4) Interprétation rapide
- East a la valeur la plus élevée (≈ 18.868 à l’horizon 10) : c’est logique car depuis East il y a une action avec grosse récompense (anti-clock = 10) et en moyenne la politique explore cette action 1/3 du temps.
- North a une valeur plus faible au départ (récompense de stay négative), mais en plusieurs étapes la valeur augmente car les transitions mènent à états plus rémunérateurs.
- Les valeurs augmentent avec h (plus d’étapes = plus de récompenses accumulées, malgré le discount).