• Aucun résultat trouvé

3.4 Des politiques optimales plus agressives

3.4.2 Performances des politiques optimales proportionnelles

Cette section pr´esente la r´esolution des politiques optimales proportionnelles et leurs performances obtenues par simulation. Nous avons utilis´e les hyperm´edia d´ecrits dans les figures 3.9 et 3.11, en conjonc- tion avec les deux algorithmes de r´esolution : Value Iteration et Q-learning.

7 8 0 2 3 1 6 5 4 .7 .2 .3 .6 .2 composant (i) di (s) bri (kb/s) bi(kb) 0 30 96 32 1 60 2 70 64 3 10 112 64 4 40 5 60 6 60 7 70 8 20 128 128

Fig. 3.9 – Graphe d’un hyperm´edia, d´ebits associ´es (br), dur´ees (d) et amorces `a pr´echarger (b).

R´esolution th´eorique. Simulation avec Value Iteration

L’algorithme Value Iteration comporte 3 ´etapes :

1. G´en´eration du mod`ele. L’algorithme se base sur les probabilit´es de transition entre les ´etats BS. Pour apprendre ces probabilit´es, nous avons simul´e 100000 navigations al´eatoires. Dans le premier exemple de la figure 3.9, il y a n = 9 composants et nous choisissons une granularit´e des amorces BG = 4. Par cons´equent, il existe N = n× (BG + 1)n≈ 2 × 106´etats BS.

Il faut m´emoriser les probabilit´es de transition dans un tableau tridimensionnel p de dimension N× N × |A| ≈ 27 × 1014. Chaque ´el´ement p[σ, σ, a] repr´esente la probabilit´e d’aller vers σ `a partir de σ en choisissant l’action a. Heureusement, la matrice est creuse, car le nombre d’´etats visit´es est assez petit (approximativement 6700). Les cycles dans le graphe initial n’impliquent pas une explosion du nombre d’´etats visit´es.

2. R´esolution. L’algorithme d’it´eration de la valeur appliqu´e au mod`ele d´ecrit ci-dessus, renvoie la po- litique optimale pour l’hyperm´edia consid´er´e. Cette politique d´etermine l’action de pr´echargement optimale pour chaque ´etat BS.

3. Validation. Nous validons la politique optimale proportionnelle par comparaison avec d’autres po- litiques : π0 (sans pr´echargement), π∗sim (politique simple optimale) et πh

prop (politique heuristique visant `a pr´echarger les deux prochains composants les plus probables en partageant la bande pas- sante selon leurs probabilit´es de transition). Nos politiques proportionnelles optimales obtenues avec l’algorithme Value Iteration seront appel´ees πprop (VI) tandis que celles fournies par l’algorithme Q-learning πprop (QL).

La quantit´e d’amorce pr´echarg´ee est influenc´ee par le temps pass´e dans chaque composant ainsi que par la bande passante disponible. Les mod`eles d’acc`es et de ressources que nous avons utilis´es dans nos simulations sont les suivants :

Mod`ele d’acc`es La dur´ee pass´ee au sein d’un composant est distribu´ee selon une distribution normale

N (m = di

2, σ = d4i). Seules les dur´ees valides (comprises entre 0 et di) sont prises en compte. Nous avons mesur´e cette dur´ee `a partir du moment o`u le composant est pr´esent´e. Pendant la p´eriode de chargement de l’amorce, l’utilisateur ne peut en effet faire aucun clic et donc l’´etat courant ne peut pas changer.

Mod`ele de ressources et de performance La bande passante moyenne pendant le composant cou-

rant est simul´ee avec une distribution uniforme entre une valeur minimale et une valeur maximale. Dans cet exemple, nous avons choisi bwmin= 96 kb/s et bwmax= 108 kb/s mais tout autre mod`ele de r´eseau peut ˆetre facilement int´egr´e. Par ailleurs nous minimisons la latence cumul´ee comme pr´ec´edemment.

Le tableau 3.3 (correspondant `a la figure 3.9) pr´esente les r´esultats pour 1000 chemins de navigation. Les valeurs (latences moyennes et ´ecarts-types) en secondes sont pr´esent´es dans trois cas diff´erents (un cas par ligne du tableau) : le graphe original (0), quand s8 requiert une grande amorce (1), et quand il demande une amorce encore plus grande (2).

no. modifications π0 πsimh πsim πproph πprop (VI) πprop (QL) 0 b8= 128 2.798 2.151 1.645 2.056 1.020 1.035 0.370 0.616 0.770 0.504 0.872 0.854 1 b8= 360 5.094 4.439 3.356 4.342 1.998 2.044 0.398 0.632 1.631 0.524 1.598 1.531 2 b8= 720 8.645 7.989 6.657 7.890 4.803 4.827 0.475 0.683 2.616 0.585 3.185 3.166

Tab. 3.3 – Comparaison des r´esultats pour 3 tailles d’amorce pour s8. Pour chaque situation, cinq politiques de prefetching ont ´et´e appliqu´ees pour 1000 chemins al´eatoires. Chaque case indique la latence moyenne (au-dessus) et l’´ecart-type (dessous) des latences observ´ees.

Ces r´esultats montrent une r´eduction importante des latences si la politique proportionnelle optimale πprop (VI) est utilis´ee. Cette r´eduction est importante mˆeme si politique optimale simple est utilis´ee. La diff´erence par rapport `a l’absence de pr´echargement (politique π0) est encore plus significative.

Pour mieux comprendre les qualit´es des politiques optimales, consid´erons par exemple deux chemins simples pour les cas (1) et (2) du tableau 3.3 : 0→ 1 → 4 → 8 et 0 → 3 → 6 → 7 → 8. Les s´equences d’actions fournies par les deux politiques optimales (c’est-`a-dire simple et proportionnelle) sont illustr´ees dans le tableau 3.4. Leurs meilleures performances par rapport aux politiques heuristiques s’expliquent par le fait qu’elles ont tendance `a pr´echarger le composant lourd de s8 tr`es tˆot (`a partir du composant 0). Cela met en ´evidence la trop courte vue des politiques πhsimet πproph .

Une autre qualit´e li´ee au caract`ere optimal de la politique est que, mˆeme si l’agent ne pr´evoit pas correctement le comportement de l’utilisateur, il saura d´ecider `a nouveau la meilleure action de pr´echargement possible malgr´e cette mauvaise pr´ediction.

Variation des param`etres de simulation Dans ce paragraphe, nous ´etudions les performances et

les temps de r´esolution associ´es aux politiques optimales proportionnelles. Parmi les facteurs qui sont susceptibles d’influencer la convergence, on peut noter : la granularit´e choisie pour repr´esenter les tampons BG, la granularit´e pour coder les actions AG et la valeur de γ.

5 4 1 3 2 .6 1 1 1 1 .4 0 ´etat (i) di (s) bri (kb/s) bi (kb) 0 10 64 192 1 40 32 96 2 10 3 10 96 4 10 256 768 5 10 64 192

Fig. 3.10 – L’hyperm´edia utilis´e pour ´evaluer l’influence des param`etres de simulation

Nous allons utiliser un graphe plus simple (figure 3.10) pour ´etudier l’influence de chacun de ces facteurs tant sur la performance que sur le temps de convergence requis. La condition de convergence ´

etablie pour l’algorithme Value Iteration est :  s∈S

|Vn+1(s)− Vn(s)| ≤

o`u Vn(s) repr´esente la valeur maximale de l’´etat s obtenue apr`es la nieme it´eration (voir section 2.4.3). La valuer choisie est 10−5. Les simulations ont ´et´e effectu´ees sur une machine Linux dot´ee d’un processeur Intel Mobile `a 1.6 GHz, une m´emoire interne de 1Go et un cache m´emoire de 128 Mo.

Dans chaque cas, nous avons fait varier un seul param`etre, les autres restant constants. Les influences de ces trois param`etres - BG, AG et γ - sont illustr´ees dans les tableaux 3.5 (AG = 3 et γ = 0.95), 3.6 (BG = 3 et γ = 0.95) et 3.7 (BG = 4 et AG = 3).

Il est tr`es difficile de comparer les r´esultats obtenus par notre approche du pr´echargement avec d’autres ´

etudes. Au mieux, nous pouvons comparer, en pourcentages, les diminutions de latences observ´ees. Cette comparaison nous est favorable : nous diminuons typiquement les latences de 40% `a 60% l`a o`u l’´etat de l’art rapporte plutˆot des r´eductions de l’ordre de 20-30%. Mais restons circonspects : les hypoth`eses et les conditions exp´erimentales sont difficilement comparables !

Simulations avec Q-learning

Nos exp´erimentations avec le Q-learning sont comment´ees ci-dessous. Les deux derni`eres colonnes du tableau 3.3 montrent que les r´esultats pour 1000 navigations simul´ees en utilisant la politique optimale πprop (QL) sont tr`es proches de ceux obtenus par l’algorithme Value Iteration(π∗prop (VI)). Nous avons choisi Ntot= 100000 pour arrˆeter le Q-learning.

Pour bien comprendre les qualit´es de la politique optimale nous consid´erons le graphe de la figure 3.11. Chaque histogramme de la figure 3.12 montre la distribution des latences observ´ees pour 10000 navigations simul´ees. Le premier histogramme (politique π0) met clairement en ´evidence la pr´esence des deux composants lourds qui ont un effet ´evident sur les latences en absence de pr´echergement.

chemin 0 1 4 → 8 0 3 6 7 → 8

πsim 8 4 8 8 6 7 8

πprop 448 (244 248) 448 448 (346 147) (247 248) 448

BG = 2 BG = 3 BG = 4 BG = 5 latence(s) 4.902 4.234 4.128 3.997 temps r´esolution(s) 0.104 0.761 3.939 14.619 Tab. 3.5 – Influence de BG sur la r´esolution et la performance de la politique π∗

prop. On observe une forte augmentation `a tendance exponentielle du temps de convergence selon le param`etre BG. N´eanmoins, au del`a de BG = 4, augmenter BG n’apporte pas un gain significatif vis-`a-vis de la r´eduction des latences

.

AG = 2 AG = 3 AG = 4 AG = 5 AG = 6 latence(s) 4.574 4.231 4.180 4.048 4.045 temps r´esolution(s) 0.598 0.753 1.009 1.174 1.383 Tab. 3.6 – Influence de AG sur la r´esolution et la performance de la politique π∗

prop. Le temps de convergence croˆıt doucement (presque lin´eairement) avec la valeur de AG. Cela s’explique par le fait que AG n’influe que sur l’espace des actions, dont le cardinal en d´epend de mani`ere lin´eaire. Au del`a de AG = 4, l’am´elioration est peu significative

γ = 0.80 γ = 0.85 γ = 0.90 γ = 0.95 γ = 0.99

latence 4.130 4.130 4.129 4.128 4.128

temps r´esolution(s) 3.812 3.817 3.870 3.930 3.989 Tab. 3.7 – Influence de γ sur la r´esolution et la performance de la politique π∗

prop. Les valeurs obtenues montrent clairement que la valeur de γ∈ [0.8, 1] est, pour nos probl`emes, peu influente.

2

4

5

6

3

1

.3 .6 .4 .3 .6 .7 .4 .3 .4 ´ etat (i) di (s) bri (kb/s) bi (kb) 1 40 64 64 2 10 3 10 32 32 4 20 96 196 5 5 64 32 6 20 96 196

Fig. 3.11 – Un contenu hyperm´edia avec plusieurs liens

Sur ces histogrammes, tout comme dans le tableau 3.8, nous pouvons observer les am´eliorations graduelles de performances `a partir de la politique sans pr´echargement π0, en passant par les politiques heuristiques πhprop et πhsim et jusqu’aux politiques optimales πsim et πprop . Les bonnes performances des politiques optimales proportionnelles par rapport `a leurs homologues simples s’expliquent d’une part par une utilisation plus agressive de la bande passante disponible et d’autre part par le spectre plus large d’actions possibles dans chaque ´etat.

π0 πhprop πhsim π∗sim πprop (VI) π∗prop (QL) 4.147 3.436 2.908 1.681 1.381 1.395 0.876 0.947 1.484 0.892 0.821 0.794

Tab. 3.8 – Latences moyennes et ´ecarts-type observ´ees pour l’hyperm´edia de la figure 3.11 Un autre ´el´ement d’appr´eciation concerne le temps de r´esolution associ´e `a un tel graphe plus complexe que les pr´ec´edents. Cet hyperm´edia conduit `a environ 4000 ´etats `a tampons, les simulations prennent alors de l’ordre de quelques secondes et la convergence du Q-learning prend environ quelques dizaines de secondes. L’utilisation d’une librairie de matrices creuses autorise ces performances.

politique sans pr´echargement π0 0 1000 2000 3000 4000 5000 6000 0 500 1000 1500 2000 2500 3000 latency count dummy policy

politique heuristique proportionnelle πh prop 0 1000 2000 3000 4000 5000 6000 0 500 1000 1500 2000 2500 3000 latency count

proportional heuristic policy

politique heuristique simple πsimh

0 1000 2000 3000 4000 5000 6000 0 500 1000 1500 2000 2500 3000 latency count

simple heuristic policy

politique optimale simple πsim

0 1000 2000 3000 4000 5000 6000 0 500 1000 1500 2000 2500 3000 latency count

simple optimal policy

politique optimales proportionnelle πprop

0 1000 2000 3000 4000 5000 6000 0 500 1000 1500 2000 2500 3000 latency count

proportional optimal policy