Abdul Kudus, SSi., MSi., PhD. Selasa, 15.00 – 17.30 di R313 ANALISIS DERET WAKTU Abdul Kudus, SSi., MSi., PhD. Selasa, 15.00 – 17.30 di R313
Metode yang paling efisien utk meramal satu variabel adalah: mencari variabel terkait korelogram. menggunakan informasi dari data masa lalu. melakukan ekstrapolasi berdasarkan trend saat ini. Pemulusan Eksponensial (Exponential Smoothing) Tujuan utk meramal xn+k berdasarkan {x1,x2,...,xn} dengan asumsi: tidak ada trend sistematik tidak ada efek musiman mungkin krn sudah dibuang dgn metode tertentu Modelnya Misal t ditaksir oleh at. Di lain pihak, taksiran yg wajar bagi nilai rata-rata pada waktu ke-t adalah rata-rata terboboti dari nilai pengamatan pada waktu ke-t dan nilai taksiran rata-rata pada waktu ke-(t-1). (1) Ini adalah Exponentially Weighted Moving Average (EWMA).
merupakan parameter pemulusan (smoothing) , jika: 1, sedikit pemulusan dan at didominasi oleh xt. 0, at didominasi oleh taksiran sebelumnya at-1. Biasanya diambil nilai = 0.2 R bisa melakukan penaksiran bagi Karena diasumsikan: tidak ada trend sistematik tidak ada efek musiman Maka peramalan yg dilakukan pada waktu n utk meramal k waktu ke depan adalah taksiran rata-ratanya pada waktu n.
Rumus dapat ditulis sbg: 1. kesalahan peramalan satu langkah ke depan 2. at adalah kombinasi linier dari pengamatan saat ini dan pengamatan sebelumnya, dengan pembobot yg lebih besar bagi data terkini. Dengan syarat 0 < < 1, shg (1- )i makin kecil. Dengan menetapkan a1 = x1.
Untuk nilai tertentu, model dan penetapan a1 = x1 dapat digunakan utk menghitung at utk t = 2,3,...,n. Kesalahan prediksi satu langkah ke depan adalah R menaksir parameter melalui MINIMISASI Jumlah Kuadrat Kesalahan Prediksi Satu Langkah ke Depan (Sum of Squared One-Step-Ahead Prediction Error = SS1PE).
Contoh: Jumlah Keluhan Terhadap Organisasi Terdapat data keluhan (bulanan) dari tahun 1996 sampai tahun 1999. Pada awal tahun 2000 ingin dilakukan penaksiran tingkat keluhan dan menyelidiki adanya trend. > www <- "http://www.massey.ac.nz/~pscowper/ts/motororg.dat" > Motor.dat <- read.table(www, header = T); attach(Motor.dat) > Comp.ts <- ts(complaints, start = c(1996, 1), freq = 12) > plot(Comp.ts, xlab = "Time / months", ylab = "Complaints") tidak ada trend sistematik tidak ada efek musiman
Pemulusan Eksponensial mrp kasus khusus dari metode Holt-Winters (yg akan dijelaskan nanti). > Comp.hw1 <- HoltWinters(complaints, beta = FALSE, gamma = FALSE) > Comp.hw1 Holt-Winters exponential smoothing without trend and without seasonal component. Call: HoltWinters(x = complaints, beta = FALSE, gamma = FALSE) Smoothing parameters: alpha: 0.1429622 beta : FALSE gamma: FALSE Coefficients: [,1] a 17.70343 > plot(Comp.hw1) Taksiran yg meminimumkan SS1PE Taksiran jumlah keluhan pada akhir tahun 1999
> Comp.hw1$SSE [1] 2502.028 Menurun
> Comp. hw2 <- HoltWinters(complaints, alpha = 0 > Comp.hw2 <- HoltWinters(complaints, alpha = 0.2, beta=F,gamma=F) > Comp.hw2 Holt-Winters exponential smoothing without trend and without seasonal component. alpha: 0.2 beta : FALSE gamma: FALSE Coefficients: [,1] a 17.97913 > Comp.hw2$SSE [1] 2526.39
Metode Holt-Winters Jika data mempunyai trend dan musiman, maka kita bisa menggunakan metode Holt-Winters. Metode Holt-Winters berdasar pada smoothing pada tiga persamaan yaitu level, trend dan musiman. Ada dua metode Holt-Winters, yakni: 1. untuk musiman yg aditif 2. untuk musiman yg multiplikatif Biasanya: , dan bernilai 0.2 Holt-Winters utk Seasonal Aditif level trend a1 = x1 musiman b1 dan (s1,...,sp) diperoleh dari dekomposisi ramalan
Biasanya: , dan bernilai 0.2 Holt-Winters utk Seasonal Multiplikatif level a1 = x1 trend b1 dan (s1,...,sp) diperoleh dari dekomposisi musiman ramalan
Contoh: Data penjualan minuman anggur (bulanan) dari Jan 1980 sampai Jul 1995. > www <- "http://www.massey.ac.nz/~pscowper/ts/wine.dat" > wine.dat <- read.table(www, header = T) ; attach (wine.dat) > sweetw.ts <- ts(sweetw, start = c(1980,1), freq = 12) > plot(sweetw.ts, xlab= "Time (months)", ylab = "sales (1000 litres)") Terdapat variasi musiman model multiplikatif
> sweetw.hw <- HoltWinters (sweetw.ts, seasonal = "mult") > sweetw.hw ; sweetw.hw$coef ; sweetw.hw$SSE Smoothing parameters: alpha: 0.4086698 beta : 0 gamma: 0.4929402 Coefficients: [,1] a 285.6890314 b 1.3509615 s1 0.9498541 s2 0.9767623 s3 1.0275900 s4 1.1991924 s5 1.5463100 s6 0.6730235 s7 0.8925981 s8 0.7557814 s9 0.8227500 s10 0.7241711 s11 0.7434861 s12 0.9472648 a, b dan (s1,...,s12) adalah taksiran level, trend dan efek musiman multiplikatif pada waktu yg terakhir (n = 187), yg akan digunakan utk meramal ke depan SSE [1] 477693.9
> plot (sweetw.hw$fitted)
> plot (sweetw.hw)
Contoh: Ramalan penumpang pesawat empat tahun ke depan. > data(AirPassengers) > AP <- AirPassengers > AP.hw <- HoltWinters(AP, seasonal = "mult") > plot(AP.hw)
> AP.predict <- predict(AP.hw, n.ahead = 4 * 12) > ts.plot(AP, AP.predict, lty = 1:2) > AP.hw$alpha alpha 0.2755925 > AP.hw$beta beta 0.03269295 > AP.hw$gamma gamma 0.8707292