• Aucun résultat trouvé

PCVI : PreConditions Value Iteration

Dans le document The DART-Europe E-theses Portal (Page 143-148)

Prise en compte de contraintes de faisabilit´e d’actions dans le cadre POMDP

5.5 PCVI : PreConditions Value Iteration

s4

s1

s3

s2 αa1

αa2

αa3

(a) Espace de d´efinition desα-vecteurs dans les POMDP.

s4

s1

s3

s2 αa1

αa2

αa3

(b) Espace de d´efinition desα-vecteurs dans les AC-POMDP. Notez que :a1est r´ealisable sur les 4 ´etats ;a2 est r´ealisable ens1 ets4; eta3 n’est r´ealisable qu’ens2.

Figure 5.5 – Sch´ema de l’espace de d´efinition des α-vecteurs pour un POMDP et un AC-POMDP `a 4 ´etats, pour lesquels l’actionaassoci´ee auα-vecteur n’est pas r´ealisable sur tous les ´etats. Notez que la repr´esentation utilis´ee est abusive, ´etant donn´e qu’une fonction de valeur du POMDP sur 4 ´etats n´ecessite d’un repr´esentation `a 4 dimensions.

an’a sa valeur d´efinie que sur les sommetsso`u cette action est d´efinie. L’espace de d´efinition desα-vecteurs du mod`ele AC-POMDP est illustr´e sur la figure 5.5. Notons que contrairement au mod`ele MOMDP, qui d´efinit un sous-espaceY ⊂Sde variables partiellement observables, sur lequel tous lesα-vecteurs de la fonction de valeur sont d´efinis, le mod`ele AC-POMDP ne d´efinit pas de sous-espace : l’espace d’´etat est le mˆeme que pour le mod`ele POMDP, mais un α-vecteur n’a sa valeur d´efinie que pour les ´etats o`u r´ealiser l’action associ´ee `a cetα-vecteur a un sens. De cette fa¸con, les diff´erents α-vecteurs qui constituent la fonction de valeur des AC-POMDP ont des supports diff´erents.

Dans la prochaine section, nous formalisons notre algorithme PCVI (PreCondition Value Iteration), d´edi´e `a une r´esolution directe du mod`ele AC-POMDP. PCVI a ´et´e con¸cu pour mettre en ´evidence un gain de temps de calcul dˆu `a la structure particuli`ere du mod`ele AC-POMDP, discut´e dans cette sous-section, ainsi que le respect des contraintes de faisabilit´e sur les actions du mod`ele `a certains ´etats.

5.5 PCVI : PreConditions Value Iteration

Dans le but de valider notre approche, nous avons impl´ement´e PCVI –PreCondition Va-lue Iteration, un algorithme point-based qui est une adaptation de l’algorithme d’it´erations sur la valeur PBVI `a des contraintes de faisabilit´e d’actions. PCVI travaille sur un ensemble finiB={b0, ..., bn}d’´etats de croyance et utilise la nouvelle mise `a jour de l’´etat de croyance de l’´equation 5.4 ainsi que l’op´erateur de mise `a jour de la valeur de l’´equation 5.9. Ces op´erations nous permettent de prendre en compte les pr´econditions sur les actions directe-ment `a partir des diff´erents ensembles d’actions r´ealisables Θ = {θ1, ..., θm}. PCVI, comme PBVI, explore l’espace d’´etats de croyance par des trajectoires stochastiques. Toutefois, il existe quatre diff´erences majeures par rapport `a PBVI :

– Les projections Γa,(o,θ)sont calcul´ees pour les paires (o, θ), o`uorepr´esente l’observation standard etθl’observation sur l’ensemble d’actions r´ealisables, contrairement `a PBVI qui ne fait aucune diff´erence entre elles ;

– PBVI calcule les projections Γa,(o,θ) pour tout α-vecteur en V0. PCVI, au contraire, calcule les Γa,(o,θ) pour toutα-vecteur de V0 tel que aα ∈θ, c’est-`a-dire qu’il ne tient compte que desα-vecteurs deV0 coh´erents avecθ. De cette fa¸con, moins deα-vecteurs seront projet´es.

– La mise `a jour de la fonction de valeur V pour un ´etat de croyance donn´e est ´evalu´ee seulement pour les actions dansAb, contrairement `a PBVI qui ´evalue toutes les actions du mod`ele.

– Un α-vecteur n’a sa valeur d´efinie que sur les ´etats (sommets s) o`u l’action associ´ee est r´ealisable.

Afin de formaliser les op´erations de projection et de mise `a jour de la valeur pour un

´etat de croyance donn´e, nous d´etaillons dans la suite l’op´erateur de mise `a jour de la valeur (backup) utilis´e par PCVI.

Comme pour les m´ethodes de r´esolution exactes [Smallwood et Sondik, 1971], l’algorithme PCVI calcule les ensembles de projections des α-vecteurs pour chaque action a et chaque paire d’observations (o, θ), tels que :

Γa,(o,θ)←αa,(o,θ)(s) =γ X

s0∈S

p(s0|s, a)F(a, s)p(o|, a, s0)I(θ, s0i(s0), ∀αi ∈V0avecaαi ∈θ (5.14) o`u F(a, s) repr´esente la relation de faisabilit´e d’une action dans un ´etat. Ceci est n´ecessaire pour empˆecher l’algorithme d’associer une valeur `a une actionaqui n’est pas r´ealisable dans un ´etat s, ce qui n’aurait pas de sens.

Ensuite, en utilisant un sous ensemble B constitu´e des pointsb de l’espace des ´etats de croyance obtenus `a partir des simulations stochastiques de la dynamique du syst`eme comme pour le cas des algorithmes PBVI et Perseus, PCVI calcule l’ensemble Γab des α-vecteurs pour touta∈ Ab, selon :

Γab ←Γa,∗+γX

o

arg max

αa,(o,θ)i ∈Γa,(o,θ)

b·αa,(o,θ)i (5.15)

avec le revenu imm´ediat Γa,∗ ← αa,∗(s) = r(s, a)F(a, s), construit de telle fa¸con qu’aucune r´ecompense ne soit associ´ee aux ´etats pour lesquels l’action an’est pas r´ealisable. Ainsi, les α-vecteurs g´en´er´es pour une action aont leur valeur d´efinie sur les ´etats de S, pour lequel cette action est r´ealisable.

La mise `a jour de la fonction de valeur est donc r´ealis´ee par l’op´eration de backup, telle que :

V ←backup(b) = arg max

αab∈Γab,a∈Ab

b·αab, ∀b∈ B (5.16) Comme d´ej`a mentionn´e (voir figure 5.5), dans le mod`ele AC-POMDP, la relation de faisabilit´e F(a, s) est d´efinie. Donc, pour une paire (s, a) si l’action a est r´ealisable,F(a, s) = 1, sinon, F(a, s) = 0. Le mod`ele AC-POMDP n’attribue pas de valeurr(s, a)→R `a cette paire ´ etat-action, puisque le mod`ele AC-POMDP ne tient pas compte de cette paire. Pour cela, nous avons besoin de filtrer la valeur de ces ´etats. Ceci est fait par la multiplicationr(s, a)F(a, s).

Cette multiplication joue le rˆole d’un filtre en laissant passer la valeur des ´etats s pour lesquels a est r´ealisable et en mettant `a z´ero la valeur des ´etats pour lesquels a n’est pas r´ealisable. Ceci est une fa¸con de d´efinir la valeur de ces actions uniquement sur les ´etats pour lesquels cette action est r´ealisable. Ainsi, le α-vecteur d’une action a n’a sa valeur d´efinie que sur les sommetsso`u cette action est d´efinie.

Notons que l’op´eration arg max de l’´equation 5.16 pour un b ∈ B ne tient compte que des α-vecteurs dont les actions associ´ees appartiennent `a Ab. De plus, nous savons que les composantes, c’est-`a-dire les ´etats supports de b, tels que b(s) > 0, appartiennent `a σ(b).

CommeAb est construit selonAb :=As,∀s∈σ(b), lors du produit scalaire, les composantes deb qui ont une valeur plus grande que z´ero ont aussi une valeur d´efinie dans lesα-vecteurs

´evalu´es. Ceci nous permet de mettre `a z´ero les composantes α(s) tels que F(s, aα) = 0. Ce masque se rapproche des masques de type BDD utilis´es dans les approches symboliques `a

5.5. PCVI : PreConditions Value Iteration base des ADD [Feng et et al., 2002, Feng et al., 2002]. De plus, si on n’utilise pas le masque F(s, aα) = 0, une action non r´ealisable en s pourrait avoir une valeur non nulle incorrecte qui pourrait ˆetre ´evalu´ee et compar´ee aux autres.

Nous tenons `a remarquer, que nous nous sommes aussi int´eress´ee `a une version relax´ee de l’´equation d’optimalit´e utilis´ee par PCVI qui permet, `a la mani`ere des MOMDP, de d´ecoupler les observations standard des observations sur les faisabilit´e d’actions et `a r´eduire de fa¸con exponentielle en nombre d’observation |Θ| le temps de calcul. Cette version relax´ee sera pr´esent´e plus tard.

Dans la prochaine section, nous d´etaillerons le pseudo-code de la versionnon-relax´e de notre algorithme PCVI qui s’appuie sur les op´erations de projection et de mise `a jour de la valeur que nous venons de pr´esenter, et qui nous appelons PCVI1.

5.5.1 Algorithme PCVI1

L’algorithme 9 formalise le pseudo-code de PCVI. Comme d´ej`a mentionn´e, PCVI est un algorithme bas´e sur l’it´eration approch´ee de la valeur. Pour cela il est n´ecessaire de g´en´erer les ´etats de croyance qui formeront l’ensembleB.

PCVI initialise l’ensemble B au d´ebut de la r´esolution (ligne 3), `a partir de b0 et de Θ0

selon ´equation 5.8. Notons qu’au moment de l’optimisation PCVI ne connaˆıt pas `a l’avance Θ0, puisque Θ0 est la premi`ere observation re¸cue avant la r´ealisation de la premi`ere action.

Pour cela, il est n´ecessaire de tenir compte de tout Θ0 possible par rapport `a b0. Nous avons besoin de v´erifier quels sont les ´etats s pour lesquels b0(s) > 0, afin d’identifier les Θ0 possibles. La mise `a jour avec l’´equation 5.8 est ainsi r´ealis´ee pour tout Θ0 possible, et chaquebΘ00 g´en´er´e est int´egr´e `a B.

Ensuite, les projections Γa,(o,θ) de la fonction de valeur Vk−1 sont calcul´ees (ligne 9) suivant l’op´erateur d´ecrit dans l’´equation 5.14. Notons qu’`a ce moment, les projections seront g´en´er´ees pour toutes les actions du mod`ele. Nous avons s´epar´e le calcul des projections de la boucle de mise `a jour de la valeur pour les ´etats de croyance, afin de les calculer une fois pour toutes (comme dans PBVI).

Ensuite, pour tout b∈ B l’op´erateur de mise `a jour de la valeur est appliqu´e (lignes 11 et 12), suivant les ´equations 5.15 et 5.16. Une fois les op´erations de mise `a jour r´ealis´ees, l’ensemble Best ´etendu.

L’ensembleB est ´etendu comme pour PBVI : pour chaque pointb∈ B, un ´etat sest tir´e suivant b(s), puis pour chaque action a ∈ Ab (Ab construit selon Ab := As,∀s ∈ σ(b)), une paire d’observations est tir´ee suivant I(θ, s0), p(o|s0) et p(s0|s, a), ainsi un ensemble {ba0, ..., baj} est cr´e´e. L’´etape suivante consiste `a mesurer la distance euclidienne des points {ba0, ..., baj} par rapport `a toutb∈ B, et le point le plus distant de tous les b∈ B est choisi et int´egr´e `a B.

L’algorithme PCVI s’arrˆete d`es que K it´erations sont r´ealis´ees ou quand la diff´erence maximale entre les valeurs actuelle et pr´ec´edente pour toutb∈ B est plus petite qu’un seuil d´efini par l’utilisateur.

Comme d´ej`a mentionn´e, le masque F(a, s), utilis´e dans la ligne 9 permet de filtrer les valeurs des vecteurs pour chaque action alors de projections de valeurs futurs. Ainsi, nous

´evitons de r´epercuter une valeur non nulle d’une composante du α-vecteur projet´e dans l’instant pr´esent sur les ´etats o`u l’action a n’est pas r´ealisable. Ceci garantit qu’une valeur non nulle incorrecte puisse ˆetre ´evalu´ee et compar´ee aux autres.

Notons que la fonction de valeur obtenue contient tous lesα-vecteur, sans faire la diff´erence entre lesα-vecteurs dont les composantes ont des valeurs d´efinies sur des ´etats diff´erents. Le choix du bonα-vecteur `a ´evaluer dans les op´erations des lignes 9, 11 et 12 d´epend deθ(ligne 9) et de Ab (lignes 11 et 12). Contrairement `a ce qui est fait dans le cadre MOMDP, dans l’algorithme 7 pr´esent´e au chapitre 2, la s´election du bon α-vecteur d´efini sur le sous-espace

Algorithme 9:PCVI1 entr´ee: POMDP,K

sortie : fonction de valeurV

1 k0 ;

13 Etendre´ Bcomme dans l’algorithme PBVI [Pineauet al., 2003] ;

14 untilk < Kou||maxαk∈Vkαk·bmaxαk−1∈Vk−1αk−1·b||< ,∀b∈ B;

Y, est faite en choisissant d’abord le sous-ensemble deα-vecteurs correspondant `a la variable visiblex∈X, puisque la fonction de valeur sur l’espace complet d’´etats est param´etr´ee par un ensemble de ΓY(x), c’est-`a-dire Γ ={ΓY(x)|x∈ X }.

Nous nous sommes aussi int´eress´ee `a une version relax´ee de l’´equation d’optimalit´e utilis´ee par PCVI qui permet, `a la mani`ere des MOMDP, de d´ecoupler les observations standard des observations sur les faisabilit´e d’actions. Cette version relax´ee, que nous avons appel´e PCVI2, est bas´ee sur une borne inf´erieure de la valeur pour un ´etat de croyance donn´e. Nous verrons dans la section 5.6 que cette version relax´ee sous-optimale permet d’acc´el´erer encore plus le temps de calcul (gain exponentiel en la taille de Θ) avec des r´ecompenses esp´er´ees correctes dans certains domaines.

5.5.2 Algorithme PCVI2

Afin de mettre en ´evidence la construction de la borne inf´erieure de la valeur pour un

´etat de croyanceb donn´e utilis´ee dans une version relax´ee de PCVI, l’´equation 5.9, pour un instantn, peut ˆetre r´e´ecrite telle que :

En d´eveloppant cette ´equation en fonction deVn(b(o,θ)a ) param´etr´ee par des α-vecteurs nous avons :

5.5. PCVI : PreConditions Value Iteration En utilisant l’´equation 5.4, dans l’´equation 5.18 :

Vn+1(b) = max

Cette mise `a jour sous-optimale de la valeur pour un ´etat de croyance donn´e nous permet de calculer des projections non plus pour les couples (o, θ), mais seulement pour les diff´erents o∈ O comme dans le cas classique des POMDP :

Γa,o ← αa,o(s) =γ X

Etant donn´´ e que l’ensemble O O ×Θ, le nombre de projections calcul´ees est divis´e par |Θ|. Ainsi, le temps de calcul sera r´eduit significativement par l’utilisation de ce calcul approch´e. Le pseudo-code de PCVI2 est quasiment le mˆeme que PCVI1. Les diff´erences sont telles que :

1. les projections de la ligne 9 de l’algorithme 9 sont calcul´ees suivant l’´equation 5.21 ; 2. la mise `a jour de la valeur r´ealis´ee dans les lignes 11 et 12 de l’algorithme 9 sera faite

selon les ´equations 5.22 et 5.23.

Ainsi, le nombre d’it´erations de la boucle for est divis´e par |Θ| ainsi que la taille de la fonction de valeur.

Dans la prochaine section, nous pr´esentons nos r´esultats exp´erimentaux pour cette nou-velle approche de r´esolution qui d´ecouple les diff´erentes informations des observations. Nous cherchons `a d´emontrer que les politiques AC-POMDP obtenues pour cette nouvelle ap-proche sont fond´ees et ´equivalentes aux politiques des POMDP transform´ees. Nous met-trons en ´evidence l’efficacit´e des algorithmes PCVI1 et PCVI2 dans des probl`emes avec des contraintes sur les actions mod´elis´ees par des pr´econditions.

Dans le document The DART-Europe E-theses Portal (Page 143-148)

Outline

Documents relatifs