Skripsi - Arsyil - Analisis Runtun Waktu Dengan Metode ANFIS
Pemodelan Data Runtun Waktu€¦ · Pemodelan Data Runtun Waktu: Data Deere1 Kristia Anggraeni...
Transcript of Pemodelan Data Runtun Waktu€¦ · Pemodelan Data Runtun Waktu: Data Deere1 Kristia Anggraeni...
Pemodelan Data Runtun Waktu:
Data Deere1
Kristia Anggraeni (662016008)
Vera M D Butarbutar (662016012)
Jessica Ordelia (662016018)
Program Studi Matematika, Fakultas Sains dan Matematika
Universitas Kristen Satya Wacana, Jl. Diponegoro 52-60 Salatiga 50711
Dalam kehidupan banyak dijumpai data dalam kurun waktu tertentu sama halnya di
bidang industri. Data yang ada dapat digunakan untuk memprediksi data pada
beberapa langkah kedepan, contohnya data Deree1 yang menampilkan data dalam
bidang industri. Data yang terkumpul pada kurun waktu tertentu dapat diprediksi
dengan menggunakan model ARMA, dan yang berlaku untuk data Deere1 adalah
ARMA(1,1) sebagai model terbaik. Model ARMA(1,1) kemudian didiagnosis untuk
menguji kelayakannya yang kemudian digunakan untuk memprediksi data 15 langkah
kedepan.
Kata Kunci- deere1, pemodelan, diagnosis, prediksi
I. PendahuluanData adalah suatu kumpulan fakta dari sebuah objek. Dalam kehidupan, kita
banyak menjumpai data dalam kurun waktu tertentu. Dalam industri sering dijumpai
banyak data baik dalam kurun waktu tertentu. Industri mesin yang dijalankan oleh
perusahaan bernama Deere memiliki kumpulan data antara lain : Deere1, Deere2, dan
Deere3.Makalah ini akan membahas bagaimana menyusun model dari data Deere 1 yang
merupakan data suatu perusahaan yang bergerak di bidang industri traktor. sampai
diperoleh suatu model yang diharapkan untuk memprediksi nilai yang akan datang. II. Dasar teori
Sekumpulan data yang diperoleh dalam kurun waktu tertentu disebut dengan
data time series. Peramalan terhadap data time series dilakukan dengan
memperhatikan data masa lampau untuk memprediksikan data di masa yang akan
datang. Sebelum melakukan prediksi data di masa yang akan datang, terlebih dahulu
membentuk suatu model matematika dari data yang sudah diperoleh.Dalam membentuk model matematika, Box dan Jenkins (1976)
mengembangkan suatu strategi pembangunan model dimana terdapat 3 langkah utama
dalam strategi ini, antara lain :
1. Identifikasi atau spesifikasi model2. Model fitting3. Model diagnosis
Uji diagnosis dilakukan untuk menguji apakah model yang sudah dibuat sesuai
dengan data yang ada. Model yang sesuai atau yang terbaik dapat diketahui dengan
melihat nilai residual antara model untuk prediksi dan data yang ada. apabila nilai
residual antara model prediksi dan datanya kecil, berdistribusi normal dan
independen.StasionerLangkah pertama yang perlu dilakukan adalah memeriksa apakah data tersebut
stasioner atau tidak. Suatu data dikatakan stasioner apabila tidak terjadi pertumbuhan
dan penurunan data yang tajam. Untuk memeriksa apakah suatu data stasioner, dapat
dilakukan dengan cara melihat grafik. Dimana data terlebih dahulu diplotkan dengan
bantuan R. Suatu data dinyatakan tidak stasioner apabila pada grafik hasil
pengeplotan terlihat data-datanya bergerak naik turun tidak mendekati suatu nilai
(nilai rata-rata). Sehingga perlu distasionerkan terlebih dahulu. Kemudian dilakukan
differencing atau pembedaan terhadap data yang belum stasioner agar menjadi
stasioner. Model ARMAAda beberapa model ARMA, dimana dalam kasus ini data deere 1 akan dibahas
dengan menggunakan ARMA (1,1). Kemudian kita memplot fungsi Autokorelasi
(ACF) dan fungsi Autokorelasi Parsial (PACF). Apabila data belum stasioner, maka
perlu dilakukan penurunan (differensiasi) terhadap data yang disajikan. Namun dalam
praktiknya, penentuan ARMA sering dilakukan apabila data sudah stasioner tanpa
harus dilakukan pembedaan (differencing).Berikut adalah persamaan umum dari model ARMA (p,q) :
Z t=∅1Z t−1+∅2Z t−2+…+∅p Zt−p+at−θ1at−1−θ2at−2−…−θqat−q
Sedangkan persamaan umum dari model ARMA (1,1) sebagai berikut :Z t=∅1Z t−1+at−θ1at−1
Model ARMA sendiri dapat dijabarkan ke dalam model AR(q) dan MA(p)AR(p)Berikut persamaan umum dari AR(p) :
Z t=∅1Z t−p+a t
Sehingga untuk AR(1) persamaannya sebagai berikut :Z t=∅Z t−1+a t
MA(q)Berikut persamaan umum dari MA(q) :
Z t=at+θ1Z t−q
Sehingga untuk MA(1) persamaannya sebagai berikut :Z t=at+θ1Z t−1
ACF (Autocorrelation Function)
Persamaan umum dari ACF adalah sebagai berikut :
ρk=cov (Z t , Z t+k )
√var (Z t)√var (Z t+ k)
PACF (Partial Autocorrelation Function)Persamaan umum dari PACF sebagai berikut :
∅k+1, k+1=
ρk +1−∑j=1
k
∅kj ρk +1− j
1−∑j=1
k
∅kjρ j
Berikut adalah acuan model dari ACF dan PACF:
AR (p) MA(q) ARMA(p,q)
ACF Tails off membentuk
gelombang sinus
Cut off setelah lag
ke-q
Tails off menurun
setelah lag (q-p)
PACF Cut off setelah lag
ke-p
Tails off membentuk
gelombang sinus
Tails off menurun
setelah lag (q-p)
Data deere 1 yang akan dibahas kali ini berisi 82 nilai dari suatu jumlah deviasi
berturut-turut untuk nilai target yang ditentukan dalam proses pemesinan industri di
Deere.
III. Metode penelitian
Penentuan model terbaik untuk data Deere1 dapat dilakukan dengan
melakukan spesifikasi model yang bertujuan untuk memilih model terbaik.
Selanjutnya akan dilakukan diagnosis. Apabila dalam diagnosis ternyata model yang
terpilih bukan merupakan model yang terbaik maka akan dilakukan spesifikasi model
dan diagnosis kembali sampai didapatkan model yang memenuhi asumsi yang
disyaratkan. Akhirnya, dengan menggunakan model tersebut kita dapat melakukan
peramalan untuk waktu yang akan datang.
IV. Hasil dan pembahasanBerdasarkan data industri dari Deere1 di atas dapat diperoleh model plot pada
Gambar 1. Terlihat bahwa data Deere1 stasioner namun masih memiliki nilai ekstr
Time
deer
e1
0 20 40 60 80
010
30
5 10 15
-0.2
0.0
0.2
Series deere1
Lag
AC
F
5 10 15
-0.2
0.0
0.2
Gambar 1. Plot Data Deere1.
Selanjutnya akan ditunjukan nilai ekstrim yang terdapat dalam data Deere1
menggunakan Boxplot dengan bantuan program R:
Gambar 2. Boxplot Deere1
Dari gambar boxplot di atas dapat dilihat bahwa nilai ekstrim yang terdapat
dalam data Deere1 ialah nilai 30 yang berada di data ke-27. Agar data Deere1 tidak
terdapat nilai ekstrim maka data ke-27 tersebut dihapus.
Dengan bantuan program R kita dapat membuat model plot Deere1[-27]
seperti Gambar 3. Dari Gambar 3 kita dapat melihat bahwa data Deere1[-27] sudah
stasioner dan tidak terdapat trend naik ataupun trend turun dalam data tersebut.
Gambar 3. Plot Deere1[-27]
Untuk membuktikan bahwa data Deere1[-27] sudah stasioner maka dilakukan
ADF test. Dengan bantuan program R:
Setelah dilakukan ADF test diperoleh hasil bahwa nilai-p = 0.03179. Karena
nilai-p = 0.03179 lebih kecil dari α=0.05, maka Deere1[-27] benar merupakan data
time series stasioner.
Kita dapat menentukan model terbaik untuk data Deere1[-27] dengan melihat
dari pola fungsi autokorelasi (ACF) dan fungsi autokorelasi parsial (PACF) yang
dinyatakan pada Gambar 4. Gambar 4 bagian atas menyatakan fungsi autokorelasi dan
bagian bawah menyatakan fungsi autokorelasi parsial sampai lag 20.
Gambar 4. Plot ACF dan PACF Deere1[-27]
Garis biru merupakan garis dalam persamaan ny
96,1 karena data yang
dimiliki sebanyak n = 81 maka, 218,0
81
96,1 ydan
218,081
96,1 y. Dapat
dilihat ACF dan PACF signifikan atau bernilai diatas garis biru pada lag 2 kemudian
tidak signifikan untuk data lainnya. Hal ini menandakan bahwa ACF dan PACF dari
data Deere1[-27] memiliki pola tails off dan tidak ada perulangan atau musiman di
dalam data Deere1[-27] . Dengan begitu kita dapat mengidentifikasi bahwa data
Deere1[-27] ini merupakan model ARMA(p,q).
Berdasarkan hasil analisis plot ACF dan PACF diperoleh model yang mungkin
adalah:
1. ARMA(1,1)
2. ARMA(1,2)
3. ARMA(2,1)
4. ARMA(2,2)
Selanjutnya akan dicari estimasi model ARMA yang mungkin dengan bantuan
program R juga diperoleh:
ARMA(1,1)
Diperoleh Coefficients dan s.e. Coefficients (Lampiran), sehingga model untuk
ARMA(1,1) adalah sebagai berikut:
Z t=∅1Z t−1+at−θ1at−1 Z t=−0.6953Z t−1+a t−0.5973a t−1+1.0568
ARMA(1,2)
Diperoleh Coefficients dan s.e. Coefficients (Lampiran), sehingga model untuk
ARMA(1,2) adalah sebagai berikut:
Z t=∅1Z t−1+at−θ1at−1−θ2at−2
Z t=−0.379Z t−1+a t−0.3906at−1−0.2720at−2+1.0723
ARMA(2,1)
Diperoleh Coefficients dan s.e. Coefficients (Lampiran), sehingga model untuk
ARMA(2,1) adalah sebagai berikut:
Z t=∅1Z t−1+∅2Z t−2+a t−θ1at−1
Z t=−0.2260Z t−1+0.2385 Zt−2+at−0.2229at−1+1.0649
ARMA(2,2)
Diperoleh Coefficients dan s.e. Coefficients (Lampiran), sehingga model untuk
ARMA(2,2) adalah sebagai berikut:
Z t=∅1Z t−1+∅2Z t−2+a t−θ1at−1−θ2at−2
Z t=−0.4429Z t−1+−0.0787Z t−2+at−0.4518at−1−0.3397at−2+1.0719
Model terbaik yang dipilih adalah model ARMA (1,1), karena perbandingan
nilai mutlak parameter dengan standard error-nya lebih dari 2 sedangkan ketiga
model lainnya tidak. Untuk membuktikan bahwa model ARMA(1,1) benar merupakan
model yang terbaik, maka kita akan melakukan uji normalitas residual untuk
membuktikan bahwa residual untuk model tersebut berdistribusi normal serta uji
independen untuk membuktikan tidak ada korelasi antar lag atau independen.
Gambar 5. Q-Q Plot
Akan dilakukan uji normalitas residual terhadap model ARMA (1,1) dengan
melihat normalitas data secara visual seperti Q-Q Plot. Pada Gambar 5. kita dapat
melihat titik-titik mendekati garis linear. Namun, jika hanya melihat normalitas secara
visual saja rawan terjadi bias, oleh karena itu kita juga akan melakukan uji normalitas
scara statistik dengan Kolmogorov-Smirnov. Dari uji Kolmogorov-Smirnov dengan
bantuan program R kita mendapatkan output, nilai-p = 0,4288 (p>0,05), yang berarti
residual untuk model ARMA(1,1) berdistribusi normal.
Gambar 6. Hasil Diagnosis Residu
Grafik fungsi autokorelasi residu pada Gambar 6. (tengah) menunjukkan
bahwa semua nilai autokorelasi residunya sampai lag 20 berada di dalam batas garis
yang artinya tidak ada yang signifikan. Pada Gambar 6. (bawah) kita juga dapat
melihat nilai-p statistik Ljung-Box tidak ada yang berada di bawah 0.05 atau lebih
kecil dari tingkat signifikansi 5% yang berarti bahwa tidak ada korelasi antar lag
(independen).
Setelah dilakukan uji normalitas residual dan uji independen pada model
ARMA(1,1) kita dapat melihat bahwa residual untuk model ARMA(1,1) berdistribusi
normal serta independen. Sehingga kita dapat menyimpulkan bahwa model ARMA
(1,1) benar merupakan model terbaik untuk data Deere1 dengan model untuk
ARMA(1,1) adalah:
Z t=−0.6953Z t−1+a t−0.5973a t−1+1.0568
Setelah diperoleh model terbaik, selanjutnya dapat dilakukan Peramalan
(Forecasting). Peramalan untuk 15 langkah ke depan adalah peramalan dengan model
terbaik, yaitu model ARMA(1,1). Hasil peramalan menunjukkan bahwa semakin lama
nilainya cenderung mendekati mean (rata-rata). Hasil peramalannya dinyatakan dalam
Tabel sebagai berikut.
Langkah
Ke-
1 2 3 4 5 6 7
Prediksi 0.742 1.276 0.905 1.163 0.983 1.108 1.021
SE 2.947 2.961 2.968 2.971 2.973 2.974 2.974
Langkah
Ke-
8 9 10 11 12 13 14 15
Prediksi 1.082 1.04 1.069 1.049 1.063 1.053 1.06 1.055
SE 2.974 2.974 2.974 2.974 2.974 2.974 2.974 2.974
0 20 40 60 80
-50
5
1:96
c(z,
ha
s$p
red)
Gambar 7. Grafik data Deere1[-27] beserta prediksinya 15 langkah ke depan.
V. Kesimpulan
Berdasarkan hasil analisis data runtun waktu dari data Deere1, diperoleh
model terbaik yang sesuai dengan data tersebut adalah ARMA(1,1) dan prediksi 15
langkah ke depan adalah mendekati nilai mean (rata-rata).
Daftar Pustaka
[1] Setiawan, Dr. Adi, M.Sc. Pemodelan Data Runtun Waktu: Kasus Data Tingkat
Pengangguran di Amerika Serikat pada Tahun 1948-1975. Fakultas Sains dan
Matematika, Universitas Kristen Satya Wacana. Salatiga
[2] Cryer, J. D. Dan Kung-Sik Chan, 2008, Time Series Analysis with Application in
R, Springer
[3] Vulandari, Retno Tri. & Parwitasari, Tika Andarasni. (2018). Perbandingan model
AR (1), ARMA (1,1), dan ARIMA (1,1,1) pada prediksi tinggi muka air Sungai
Bengawan Solo pada pos pemantauan Jurug. Journal of Mathematics Education,
Science and Technology, Vol. 3, Hal 46 – 56.
[4] Agung. 2017. ARIMA SARIMA: SI KEMBAR DARI TIME SERIES | CATATAN
BUDI. https://agungbudisantoso.com/2017/03/21/arima-sarima-si-kembar-dari-
time-series/
[5] Statistic Center Diponegoro University. 2016. Analisis Runtun Waktu (Time Series
Analysis). http://scundip.org/uncategorized/analisis-runtun-waktu/.
Lampiran
Command R untuk Analisis Data Deree1
a. Memanggil data deree1
> library(TSA)
Attaching package: ‘TSA’
The following objects are masked from ‘package:stats’:
acf, arima
The following object is masked from ‘package:utils’:
tar
> data(deere1)
> deere1
Time Series:
Start = 1
End = 82
Frequency = 1
[1] 3 0 -1 -4 7 3 7 3 3 -1 -1 5 -4 1 -3 2 -3 1 -2 -3 -4 -2 3 3 3
[26] 3 30 2 7 -7 3 2 3 0 3 0 3 -1 3 3 3 2 3 3 -1 3 3 2 3 2
[51] 3 8 0 -1 0 0 1 2 2 0 8 0 1 -2 -3 4 0 4 -1 -1 1 -7 3 1 3
[76] 1 0 -1 -4 -1 -1 3
> plot(deere1,type="l")
> boxplot(deere1)
b. Grafik deere1[-27]
> z=deere1[-27]
> plot(z,type="l")
c. Pembuktian deere1[-27] stasioner
> library(tseries)
‘tseries’ version: 0.10-40
‘tseries’ is a package for time series analysis and computational
finance.
See ‘library(help="tseries")’ for details.
Warning message:
package ‘tseries’ was built under R version 3.2.5
> adf.test(z)
Augmented Dickey-Fuller Test
data: z
Dickey-Fuller = -3.6797, Lag order = 4, p-value = 0.03179
alternative hypothesis: stationary
d. Grafik ACF dan PACF deree1[-27]
> acf(z)
> pacf(z)
e. Pengujian Model ARMA(1,1), ARMA(1,2), ARMA(2,1), ARMA(2,2)
> arma11 = arima(z, c(1, 0, 1))
> arma11
Call:
arima(x = z, order = c(1, 0, 1))
Coefficients:
ar1 ma1 intercept
-0.6953 0.5973 1.0568
s.e. 0.2529 0.2709 0.3087
sigma^2 estimated as 8.685: log likelihood = -202.49, aic = 410.98
> arma12 = arima(z, c(1, 0, 2))
> arma12
Call:
arima(x = z, order = c(1, 0, 2))
Coefficients:
ar1 ma1 ma2 intercept
-0.379 0.3906 0.2720 1.0723
s.e. 0.328 0.3196 0.1089 0.3818
sigma^2 estimated as 8.172: log likelihood = -200.1, aic = 408.21
> arma21 = arima(z, c(2, 0, 1))
> arma21
Call:
arima(x = z, order = c(2, 0, 1))
Coefficients:
ar1 ar2 ma1 intercept
-0.2260 0.2385 0.2229 1.0649
s.e. 0.2862 0.1091 0.2832 0.3938
sigma^2 estimated as 8.278: log likelihood = -200.6, aic = 409.2
> arma22 = arima(z, c(2, 0, 2))
> arma22
Call:
arima(x = z, order = c(2, 0, 2))
Coefficients:
ar1 ar2 ma1 ma2 intercept
-0.4429 -0.0787 0.4518 0.3397 1.0719
s.e. 0.4589 0.3627 0.4370 0.3238 0.3730
sigma^2 estimated as 8.167: log likelihood = -200.08, aic = 410.16
f. Analisis Residu
> r = resid(arma11)
> qqnorm(r)
> qqline(r)
> ks.test(r,"pnorm",mean(r),sd(r))
One-sample Kolmogorov-Smirnov test
data: r
D = 0.095179, p-value = 0.4288
alternative hypothesis: two-sided> tsdiag(arma11)
g. Prediksi 15 langkah kedepan
> BB = has$pred - 1.96*has$se
> BA = has$pred + 1.96*has$se
> bb=min(z,BB)-1
> ba=max(z,BA)+1
> plot(1:96,c(z,has$pred),type="b",ylim=c(bb,ba))
> lines(82:96,has$pred,lty=2)
> lines(82:96,BA,lty=3)
> lines(82:96,BB,lty=4)