0% ont trouvé ce document utile (0 vote)
34 vues4 pages

Master2 TP2

Transféré par

fatiha.mokhari1
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
34 vues4 pages

Master2 TP2

Transféré par

fatiha.mokhari1
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Université Docteur Moulay Tahar

Faculté des sciences


Département de Mathématiques
Master2

TP 2-1
# prevision par lissage exponentiel
Méthodes de lissage exponentiel Les méthodes de lissage exponentiel s’obtiennent
avec la fonction : HoltWinters. Le tableau ci-dessous résume les fonctions à entrer
pour chaque méthode :

Nom de la méthode Commande


SES (lissage simple) xlisse <- HoltWinters(x, beta=F, gamma=F)
Holt (lissage double) xlisse <- HoltWinters(x, gamma=F)
Holt-Winters additif xlisse <- HoltWinters(x, seasonal= "add")
Holt-Winters multiplicatif xlisse <- HoltWinters(x, seasonal= "mul")
Remarque : à la place de "add" et "mul", on peut entrer n’importe quel début
des mots "additive" et "multiplicative" (par exemple "addit" et "multip")
A¢ chage et visualisation des résultats :
Fonction e¤et
xlisse a¢ chage des paramètres
summary(xlisse) Description de l’objet obtenu par HoltWinters
lissage plot(xlisse) Représentation des valeurs observées + valeurs lissées
plot(xlisse$…tted) Représentation de l’estimation du niveau de la pente et de la saisonnalité
Prévision : Avec la fonction predict. Exemple, prévisions jusqu’à l’horizon h
:
h <- 12
p <- predict(xlisse, [Link]=h)
HoltWinters retourne une liste d’objets de class "HoltWinters" aves les noms
des composants suivants …tted …tted time series with level, trend and
seasonal components.
x la série originale.
alpha paramètre de lissage
beta paramètre de lissage.
gamma paramètre de lissage.
coe¢ cients c’est un vecteur de composantes a, b et s, coe¢ cients de la
tendance et la saisonnalité
seasonal la nature de la sésonnalité
SSE la somme des carrés des erreurs
Exemples
1)
x1=c(52, 50 ,54, 55, 58, 57, 60, 61, 64, 62, 64, 65)
x1=c(25, 29 ,24, 21, 26, 23, 27, 25, 21, 24, 26, 29,25)
x2=ts(x1)
ll=HoltWinters(x2,alpha=0.4,beta=F,gamma=F)
ll
X11()
1
2

plot( …tted(liss1))
K=…tted(liss1)[,1]
K
X11()
plot(K)
p1=predict(liss1,[Link]=12)
p1
X11()
plot(p1)
X11()
x_p <- ts(c(x1,p1))
x_p
X11()
plot(x_p,xlab="Lissage et prévision par lissage exponentiel simple")
lines(K,col="red")
lines(p1,col="green")
—————————————————————————
2)
x2=c(52, 50 ,54, 55, 58, 57, 60, 61, 64, 62, 64, 65)
x2=ts(x1, start=1930, frequency=12)
liss2=HoltWinters(x2,alpha=0.16,beta=0.7,gamma=F)
liss2
K=…tted(liss2)[,1]
plot( liss2)
p1=predict(liss2,[Link]=30)
plot(p1)
x_p <- ts(c(K,p1), start=1930, frequency=12)
plot(x_p, col="red",xlab="Lissage et prévision par lissage exponentiel double
de la série X(t)", type="o",col="black")
abline(v=1934+10/12,col=4)
———————————————————————————————
3)
## Seasonal Holt-Winters
(m <- HoltWinters(co2))
plot(m)
plot(…tted(m))
(m <- HoltWinters(AirPassengers, seasonal = "mult"))
plot(m)
## Non-Seasonal Holt-Winters
x <- uspop + rnorm(uspop, sd = 5)
m <- HoltWinters(x, gamma = FALSE)
plot(m)
## Exponential Smoothing
m2 <- HoltWinters(x, gamma = FALSE, beta = FALSE)
lines(…tted(m2)[,1], col = 3)
#}
————————————————————————————-
4)
3

Réccupérer le …chier tra…c et exécuter les codes suivants


# prevision par lissage exponentiel
f=…[Link]()
tra…c=scan(f)
tra…c
length(tra…c)
longueur <- 204
horizon <- 12
tra…c1=ts(tra…c[1:longueur], start=1949, freq=12)
plot(tra…c1)
yHW <- HoltWinters(tra…c1, seasonal="mul")
X11()
plot(yHW)
plot(…tted(yHW))
K=…tted(yHW)[,1]
p <- predict(yHW, [Link]=horizon)
y <- ts(tra…c, start=1949, frequency=12)
X11()
plot(y)
lines(K,col="red")
lines(p,col="green")
4

TP 2-2
# prevision par lissage exponentiel
Lissage et prévision de données simulées
Simuler les trois séries temporelles suivantes (cf. TP1), de taille 100 :
–X1(t) = "t ,
–X2(t) = 0.5t + 2 "t ,
–X3(t) = 0.5t + "t + 3 cos 3t6
,
où t N(0, 1). Les 70 premières données de chaque série vont être utilisées pour
prédire les 30 dernières.
1. Pour chaque série, e¤ectuer la prévision par lissage exponentiel simple et
double. Tester di¤érentes valeurs du paramètre de lissage (4 à 5 valeurs), et
représenter graphiquement la série ainsi que la prévision. Commenter chaque
résultat, et essayer de déterminer graphiquement le lissage le plus adaptée pour
chaque série.
2. Calculer pour chaque prévision e¤ectuée la somme des carrés des erreurs, et
selectionner le meilleur modèle à l’aide de cette quantité.
3. Tester maintenant le lissage exponentiel de Holt-Winters avec composante
saisonnière additive puis multiplicative.
4. Les prédictions obtenues sont-elles meilleures ?
Rq : la commande par(mfrow=c(n,p)) permet d’a¢ cher n pgraphiquesurlammepage:
2 Lissage et prévision de la concentration en co2
Le …chier de données co2 contenu dans R contient les concentrations en CO2 à
proximité du volcan Mauna Loa (Hawaï) de 1959 à 1997.
Après avoir représenté graphiquement ces données, quel modèle de lissage ex-
ponentiel vous semble le mieux approprié ?
A…n de valider ce modèle, tester la prédiction des données de 1990 à 1997 en
utilisant celles de 1959 à 1989. Si cela vous semble graphiquement correct, utilisez
cette méthode pour prédire les concentrations en co2 de 1997 à 2007. Sinon, tester
d’autres méthodes de lissage exponentiel.
3 Lissage et prévision du CAC40
Récupérer le …chier contenant les valeurs de cloture journalière du CAC40 de
1991 à 1998 (données R EuStockMarkets).
Essayer de prédire par lissage exponentiel les valeurs de cloture de 1998 en
utilisant les valeurs de cloture de 1991 à 1997.
4. Créer une fonction qui peut faire un lissage exponentiel simple

Vous aimerez peut-être aussi