Peramalan terhadap banyak turis yang datang ke Spanyol akan dilakukan pada April sampai Desember 1989.
library(readxl)
tugas1=read_xlsx("D:/Semester6/MPDW/spain.xlsx",sheet = "Sheet1")
ddw=ts(tugas1$SPAIN, start=c(1970,1),end=c(1989,3), freq=12)
plot(ddw, main = 'Banyak Turis di Spanyol 1970-1989')
Dilihat dari grafik diatas, terlihat bahwa data deret waktu ini berpola seasonal. Karena itu, metode pemulusan yang akan digunakan adalah metode Winter’s Aditif dan Multiplikatif.
library(forecast)
## Registered S3 method overwritten by 'quantmod':
## method from
## as.zoo.data.frame zoo
aditif<-HoltWinters(ddw, alpha=NULL, beta=NULL, gamma=NULL,seasonal = "additive")
aditif
## Holt-Winters exponential smoothing with trend and additive seasonal component.
##
## Call:
## HoltWinters(x = ddw, alpha = NULL, beta = NULL, gamma = NULL, seasonal = "additive")
##
## Smoothing parameters:
## alpha: 0.1903305
## beta : 0.00662229
## gamma: 0.49067
##
## Coefficients:
## [,1]
## a 4767500.51
## b 15197.63
## s1 -1026667.59
## s2 -551853.16
## s3 108644.58
## s4 3677465.62
## s5 4783380.52
## s6 920199.25
## s7 -777091.02
## s8 -2106869.05
## s9 -1321152.01
## s10 -2147239.26
## s11 -2218414.42
## s12 -1613631.38
head(aditif$fitted, n = 5L)
## xhat level trend season
## Jan 1971 827482.3 1964719 22409.74 -1159646.1
## Feb 1971 858582.7 2016754 22605.93 -1180777.4
## Mar 1971 1147419.3 2062511 22759.24 -937850.7
## Apr 1971 1825931.5 2102139 22870.96 -299078.6
## May 1971 1886605.3 2138859 22962.67 -275216.4
plot(aditif)
points(ddw)
aditif.ramal=forecast(aditif, h=9)
aditif.ramal
## Point Forecast Lo 80 Hi 80 Lo 95 Hi 95
## Apr 1989 3756031 3315440 4196621 3082206 4429856
## May 1989 4246043 3797439 4694647 3559962 4932123
## Jun 1989 4921738 4465158 5378318 4223459 5620017
## Jul 1989 8505757 8041236 8970277 7795333 9216180
## Aug 1989 9626869 9154440 10099298 8904351 10349387
## Sep 1989 5778886 5298579 6259192 5044320 6513452
## Oct 1989 4096793 3608636 4584949 3350222 4843364
## Nov 1989 2782213 2286233 3278192 2023677 3540748
## Dec 1989 3583127 3079349 4086906 2812664 4353590
plot(aditif.ramal, main = 'Peramalan Banyak Turis ke Spanyol')
points(ddw)
SSE1 <- aditif$SSE
MSE1 <- aditif$SSE/length(ddw)
RMSE1 <- sqrt(MSE1)
akurasi1 <- matrix(c(SSE1,MSE1,RMSE1))
row.names(akurasi1)<- c("SSE", "MSE", "RMSE")
colnames(akurasi1) <- c("Akurasi Seasonal Smoothing Aditif)")
akurasi1
## Akurasi Seasonal Smoothing Aditif)
## SSE 2.591595e+13
## MSE 1.121903e+11
## RMSE 3.349482e+05
multiplikatif<-HoltWinters(ddw, alpha=NULL, beta=NULL, gamma=NULL,seasonal = "multiplicative")
multiplikatif
## Holt-Winters exponential smoothing with trend and multiplicative seasonal component.
##
## Call:
## HoltWinters(x = ddw, alpha = NULL, beta = NULL, gamma = NULL, seasonal = "multiplicative")
##
## Smoothing parameters:
## alpha: 0.3302993
## beta : 0.01050499
## gamma: 0.6117378
##
## Coefficients:
## [,1]
## a 5.324835e+06
## b 1.833930e+04
## s1 6.883228e-01
## s2 7.891719e-01
## s3 9.300434e-01
## s4 1.701529e+00
## s5 1.957480e+00
## s6 1.157175e+00
## s7 7.963876e-01
## s8 5.101529e-01
## s9 6.694654e-01
## s10 4.908254e-01
## s11 4.633247e-01
## s12 5.848328e-01
head(multiplikatif$fitted, n = 5L)
## xhat level trend season
## Jan 1971 899273.5 1964719 22409.74 0.4525493
## Feb 1971 926723.5 2048337 23052.74 0.4473922
## Mar 1971 1196945.8 2110882 23467.61 0.5608011
## Apr 1971 1858425.9 2157381 23709.56 0.8520625
## May 1971 1917712.4 2196701 23873.54 0.8636110
plot(multiplikatif)
points(ddw)
multiplikatif.ramal=forecast(multiplikatif, h=9)
multiplikatif.ramal
## Point Forecast Lo 80 Hi 80 Lo 95 Hi 95
## Apr 1989 3677829 3333663 4021995 3151473 4204185
## May 1989 4231156 3843694 4618618 3638584 4823728
## Jun 1989 5003497 4559837 5447158 4324977 5682017
## Jul 1989 9185181 8501863 9868499 8140136 10230226
## Aug 1989 10602752 9814679 11390826 9397498 11808006
## Sep 1989 6289100 5735828 6842371 5442944 7135256
## Oct 1989 4342869 3873241 4812497 3624636 5061103
## Nov 1989 2791327 2377708 3204945 2158752 3423902
## Dec 1989 3675291 3172888 4177694 2906931 4443650
plot(multiplikatif.ramal, main = 'Peramalan Banyak Turis ke Spanyol')
points(ddw)
SSE2 <- multiplikatif$SSE
MSE2 <- multiplikatif$SSE/length(ddw)
RMSE2 <- sqrt(MSE2)
akurasi2 <- matrix(c(SSE2,MSE2,RMSE2))
row.names(akurasi2)<- c("SSE", "MSE", "RMSE")
colnames(akurasi2) <- c("Akurasi Seasonal Smoothing Multiplikatif")
akurasi2
## Akurasi Seasonal Smoothing Multiplikatif
## SSE 2.913402e+13
## MSE 1.261213e+11
## RMSE 3.551356e+05
akurasi <-cbind(akurasi1, akurasi2)
akurasi
## Akurasi Seasonal Smoothing Aditif)
## SSE 2.591595e+13
## MSE 1.121903e+11
## RMSE 3.349482e+05
## Akurasi Seasonal Smoothing Multiplikatif
## SSE 2.913402e+13
## MSE 1.261213e+11
## RMSE 3.551356e+05
Karena nilai MSE, RMSE, dan SSE dari metode Winter’s Aditif lebih kecil daripada metode Winter’s Multiplikatif, maka lebih baik kita menggunakan metode Winter’s Aditif untuk data deret waktu ini.
Note: Proyek ini adaalah hasil tugas individu mata kuliah Metode Peramalan Deret Waktu.