• Aucun résultat trouvé

LoadForecasting : prédiction de charge de travail

Dans le document The DART-Europe E-theses Portal (Page 125-128)

Le temps d’initialisation d’une instance est généralement de quelques minutes. Cette période dépend d’une certaine quantité de facteurs incluant la taille de l’image et le système d’exploitation. Afin d’absorber le temps d’initialisation, nous avons proposé dans le chapitre précédent deux solutions à savoir la dégradation de QdS et la dé-gradation de fonctionnalité. Dans le présent chapitre, nous consolidons notre solution avec la prédiction de la charge du travail. Nous reposons sur les méthodes des séries chronologiques pour fournir un moyen de prédiction en se basant sur l’historique.

Dans ce qui suit, nous introduisons, d’abord, la modélisation des séries chronolo-giques. Ensuite, nous développons notre technique de prédiction.

5.3.1 Modélisation d’une série chronologique

Figure5.5 – Prédiction des valeurs futures

L’étude d’une série chronologique permet d’analyser, de décrire et d’exploiter un phénomène au cours du temps. Nous utilisons les séries chronologiques pour la pré-diction des valeurs futures (intervalle de prépré-diction) de la demande à partir des valeurs observées (fenêtre de prédiction). Cette analyse est illustrée par la Figure5.5. Les infor-mations sur l’historique apparaissent à gauche du trait vertical alors que les prévisions effectuées apparaissent à droite du trait vertical.

Une série chronologique est constituée, en général, de trois effets (ou composantes) [BJ94] :

• un effet à long terme, appelé tendance, composante tendancielle outrend,

• un effet dit saisonnier, qui réapparaît à intervalles réguliers. Cet effet se traduit par une composante de la série appelée composante saisonnière,

• un effet inexpliqué. Cet effet que l’on suppose en général dû au hasard, se mani-feste par des variations accidentelles.

La modélisation d’une série chronologique spécifie les rapports entre les composantes via un modèle (une équation). Nous distinguons principalement le modèle additif et le modèle multiplicatif. Nous avons choisi le modèle additif (équation5.1) pour modéliser nos séries chronologiques. Ce modèle est le modèle de base.

Xt = ft+st+Et+pt (5.1)

Où ft est la tendance, st représente la composante saisonnière, Et représente la variation aléatoire due à de nombreuses causes pas forcément bien identifiées, mais de répercussion limitée etptreprésente les perturbations majeures liées à des événements importants mais qui ne se répètent pas et dont l’influence est limitée dans le temps.

5.3.2 Forecaster, la technique

Nous proposons un composant Forecasterpour prédire les valeurs futures de charge.

Dans ce qui suit, nous commençons par illustrer une vue d’ensemble de notre solution.

Ensuite, nous développons le processus de prédiction.

i) Modèle conceptuel

La Figure 5.6 illustre notre Forecaster. A partir des observations (l’historique), notre algorithme fournit les valeurs futures comme sortie. L’algorithme de prédiction se base sur des méthodes de prédiction (ForecastingMethod) et modèles de précision (Forecas-tingAccuracy).

Nous utilisons la librairie OpenForecast4qui fournit l’implémentation de méthodes de prédiction. Nous rappelons que l’objectif de la prédiction de la demande est d’absor-ber le temps d’initialisation des instances. Ce temps est de l’ordre de quelques minutes.

C’est pourquoi, nous nous intéressons à cette librairie qui fournit des méthodes de prévision à court terme. Parmi ces méthodes nous pouvons citer : la moyenne mobile (Moving Average), le lissage exponentiel (Exponential Smoothing) et la régression (Re-gression) [BJ94]. Néanmoins, il est possible d’utiliser d’autres librairies implémentant plus de méthodes de prédiction ou d’implémenter ces propres méthodes.

Les modèles de précision permettent d’évaluer les méthodes de prédiction. Intui-tivement, plus l’erreur de prévision est petite et meilleure est la méthode. L’équation

4http ://www.stevengould.org/software/openforecast/index.shtml

5.2illustre l’erreur de prévision : la différence entre la valeur réelle et la valeur prévue pour une période donnée.

Et =Yt−Ft (5.2)

OùEest l’erreur de prédiction dans la périodet,Yest la valeur courante à la périodet et Fest la valeur prédite à la période t. Parmi les modèles de précision, nous pouvons citer : l’erreur absolue moyenne (Mean absolute error - MAE) et l’écart absolu moyen (Mean Absolute Deviation - MAD) [HK06].

Figure5.6 – Méta-modèle Forecaster

ii) Technique de prédiction

La technique de prédiction développée est basée principalement sur trois méthodes : i) initializeParameters, ii) getBestForecaster et ii) forecast (voir la Figure5.7) :

Figure5.7 – Technique de prédiction

initializeParameters : paramétrage de l’intervalle et fenêtre de prédiction L’in-tervalle de prédiction (futur) est paramétré en fonction des temps d’initialisation des instances. Nous proposons deux manières d’utiliser cette méthode : i) statique et ii) dynamique. La manière statique consiste à faire un seul appel à cette méthode pour initialiser l’intervalle de prédiction. Dans ce cas, les temps d’initialisation sont calculés suite à des tests réalisés sur les différents types d’instances utilisées par le système. La

deuxième alternative est de calculer les paramètres de prédiction à chaque prédiction en se basant sur les derniers temps d’initialisation observés. Le temps d’initialisation inclut le temps de démarrage des instances et le temps d’enregistrement auprès du répartiteur de charge dans notre architecture n-tiers dans notre cas. Dans le reste de ce chapitre, nous adoptons la manière statique.

La valeur de l’intervalle de prédiction est égale à la moyenne de temps d’initialisa-tion. La fenêtre de prédiction est égale au moins à 60 observations.

getBestForecaster : sélection de méthode de prédictionCette partie est basée sur la librairie OpenForecast. Elle consiste à appliquer les différentes méthodes de prédiction aux valeurs observées en utilisant diverses combinaisons des variables indépendantes puis sélectionner la meilleure méthode qui a la plus petite valeur d’erreur de prédiction.

forecast : prédiction des valeursUne fois, la méthode de prédiction sélectionnée, la dernière partie est dédiée à la prédiction des valeurs futures de la charge de travail.

Ainsi, notre composantForecasterpermet de générer les futures charges en paramé-trant aisément les intervalles/fenêtres de prédiction.

5.4 RightCapacity : planification de capacité dirigée par

Dans le document The DART-Europe E-theses Portal (Page 125-128)