Jelajahi eBook
Kategori
Jelajahi Buku audio
Kategori
Jelajahi Majalah
Kategori
Jelajahi Dokumen
Kategori
Oleh :
ANGGITA RIZKY FADILAH NRP. G152180151
SEKOLAH PASCASARJANA
INSTITUT PERTANIAN BOGOR
BOGOR
2019
PENDAHULUAN
Latar Belakang
Seiring meningkatkan tingkat kepadatan masyarakat, mendorong pula peningkatan
kebutuhan pangan, khususnya di Indonesia. Telur ayam merupakan salah satu sumber protein yang
kerap dikonsumsi hampir tiap hari oleh masyarakat di Indonesia dikarenakan harga yang cukup
terjangkau dan mudah didapat. Sehingga menyebabkan menjamurnya peternakan ayam di
berbagai wilayah dalam memenuhi kebutuhan telur bagi masyarakat.
Melonjaknya harga telur ayam beberapa waktu terakhir sempat mengakibatkan masyarakat
was – was untuk membeli telur ayam. Sehingga perlu dilakukan peramalan harga telur ayam.
Pentingnya mengetahui peramalan harga telur ayam di waktu selanjutnya dapat membantu
masyarakat dalam memenuhi kebutuhan sehari – hari. Agar diperoleh hasil peramalan yang baik,
maka diperlukan metode yang tepat untuk digunakan dalam peramalan.
Analisis deret waktu merupakan metode yang sesuai untuk peramalan. Dikarenakan metode
ini fleksibel dan mudah digunakan sehingga metode ini sering digunakan dalam peramalan
berbagai permasalahan, seperti harga saham, inflasi, nilai tukar, tingkat kepadatan penduduk, dll.
Apabila objek yang hendak diramal sangat banyak, maka dalam kasus ini pendekatan yang dapat
digunakan adalah time series clustering atau penggerombolan data deret waktu. Penggerombolan
(clustering) dimaksudkan untuk mereduksi dimensi data agar mempermudah peneliti dalam
meramalkan objek yang sangat banyak namun dengan waktu yang cukup ringkas. Pentingnya
metode penggerombolan ini adalah mengiefisiensikan waktu dan tahap analisis sehingga peneliti
tetap memperoleh hasil yang maksimum.
Rumusan Masalah
Tujuan penelitian ini adalah mengkaji hasil pemodelan ARIMA secara individu di tiap provinsi
dengan pemodelan ARIMA pada data gerombol yang terbentuk serta mengevaluasi tingkat
kebaikan pendugaan dari kedua jenis pemodelan ARIMA tersebut sehingga diperoleh pemodelan
ARIMA yang terbaik.
TINJAUAN PUSTAKA
𝜆 𝜆
𝒁𝒕 = ∑𝑝𝑘−1 ∑𝑙=0
𝑘
𝚽𝑘𝑙 𝑾(𝑙) 𝒁𝑡−𝑘 − ∑𝑞𝑘−1 ∑𝑙=0
𝑘
𝚯𝑘𝑙 𝑾(𝑙) 𝒆𝑡−𝑘 − 𝒂𝑡 (1)
dengan 𝚽𝑘𝑙 merupakan matriks diagonal parameter otoregresif pada lag waktu ke-k dan lag spasial
ke-l, 𝑾(𝑙) merupakan matriks pembobot spasial lag ke-l, dan 𝚯𝑘𝑙 meruapakan matriks diagonal
parameter rataan bergerak pada lag waktu ke-k dan lag spasial ke-l.
Data
Data yang digunakan dalam peneltian ini adalah data sekunder yang diambil dari Pusat
Informasi Harga Pangan Strategis Nasional yang dapat diakses melalui hargapangan.id. data ini
mengenai harga telur ayam (per kilogram) 32 provinsi di Indonesia. Terdapat 89 amatan di setiap
provinsi, terhitung dari minggu pertama Bulan Juli 2017 hingga minggu kedua Bulan Maret 2019.
Berikut ringkasan peubah yang digunakan dalam penelitian ini:
Tabel 1 Peubah yang digunakan dalam penelitian
Peubah Keterangan Tipe Peubah Satuan
𝑍1 Harga telur ayam Provinsi Aceh Rasio Ribu rupiah
(kg)
𝑍2 Harga telur ayam Provinsi Rasio Ribu rupiah
Sumatera Utara (kg)
… …. … …
… …. … …
𝑍31 Harga telur ayam Provinsi Papua Rasio Ribu rupiah
(kg)
𝑍32 Harga telur ayam Provinsi Papua Rasio Ribu rupiah
Barat (kg)
Eksplorasi Data
Pada penelitian ini, perkembangan harga telur ayam per kilogram sejak minggu ke-1 Bulan
Juli 2017 hingga minggu ke-2 Bulan Maret 2019 diambil dari 32 provinsi, yaitu Aceh, Sumatera
Utara, Sumatera Barat, Riau, Kepulauan Riau, Jambi, Bengkulu, Kepulauan Bangka Belitung,
Lampung, Jawa Barat, DKI Jakarta, Jawa Tengah, DIY Yogyakarta, Jawa Timur, Bali, Nusa
Tenggara Barat, Nusa Tenggara Timur, Kalimantan Barat, Kalimantan Selatan, Kalimantan
Tengah, Kalimantan Timur, Kalimantan Utara, Gorontalo, Sulawesi Selatan, Sulawesi Tenggara,
Sulawesi Tengah, Sulawesi Utara, Sulawesi Barat, Maluku, Maluku Utara, Papua, Dan Papua
Barat.
Gambar 1. Plot Rata-Rata Harga Telur Ayam (per kg) di Provinsi Aceh – Bali Periode Juli 2017
(minggu 1) - Maret 2019 (minggu 2)
Gambar 2. Plot Rata-Rata Harga Telur Ayam (per kg) di Provinsi Nusa Tenggara Barat - Papua
Barat Periode Juli 2017 (minggu 1) - Maret 2019 (minggu 2)
Berdasarkan Gambar 1 dan Gambar 2 di atas, rata – rata harga telur ayam (kg) tertinggi terjadi
pada Provinsi Papua dan rata – rata harga telur ayam (kg) terendah terjadi pada Provinsi Sulawesi
Barat. Secara rataan, rata – rata harga telur ayam (kg) di Indonesia sekitar Rp 24.155,85 atau
dibulatkan menjadi Rp 24.200 dan keragaman dari rata – rata harga antar provinsi sebesar Rp
3.659,17 atau dibulatkan menjadi Rp 3.700.
Gambar 3. Plot Deret Waktu Data Harga Telur Ayam Dif 2 di Aceh
Gambar 4. Plot ACF Harga Telur Ayam Dif 2 di Aceh
Berdasarkan Gambar 3, data harga telur ayam sudah stasioner setelah dideferensiasi ordo 2.
Kemudian pada Gambar 4, ACF cuts off setelah lag 1 dan pada Gambar 5 PACF cuts off setelah
lag 1 sehingga kandidat model yang terbentuk sementara adalah ARIMA (1,2,0) dan ARIMA
(0,2,1). Kemudian pada Gambar 6, kandidat model ARIMA sementara yang terbentuk adalah
ARIMA (0,2,1), ARIMA (0,2,7) dan ARIMA (1,2,1). Setelah diperoleh kandidat model
sementara, dilanjutkan dengan diagnostik sisaan pada model dengan AIC paling minimum. Jika
model dengan AIC minimum tidak memenuhi asumsi sisaan, maka model dengan AIC minimum
kedua didiagnostik sisaannya dan apabila memenuhi, maka model tersebut menjadi model yang
terbaik dan layak digunakan.
Tabel 2. Kandidat Model ARIMA dan AIC Provinsi Aceh
Kandidat model AIC
ARIMA (1,2,0) 955,04
ARIMA (0,2,1) 957,85
ARIMA (0,2,7) 949,34
ARIMA (1,2,1) 947,55
Berdasarkan tabel 2 di atas, model ARIMA (1,2,1) memiliki nilai AIC minimum.
Selanjutnya dilakukan diagnostik sisaan, yaitu sisaan yang mengikuti sebaran normal dan saling
bebas (tidak berkorelasi). Untuk mengetahui sebaran sisaan plot Q-Q Normal dapat digunakan
serta Plot Residual dan Uji Ljung-Box digunakan untuk mengetahui kebebasan residual. Berikut
hasil Plot Q-Q Normal, Plot Residual, dan Uji Ljung-Box.
Gambar 9. Hasil Uji Ljung – Box Pada Sisaan Model ARIMA (1,2,1)
Pada Gambar 7, terlihat bahwa sebaran sisaan model ARIMA (1,2,1) sudah mengikuti garis normal
sehingga dapat dikatakan sebaran sisaan model ARIMA (1,2,1) mengikuti sebaran normal.
Sedangkan antar sisaan sudah saling bebas, terlihat dari Gambar 8 dan pada hasil Uji Ljung-Box
terlihat bahwa p-value sudah lebih besar alfa (5%) sehingga terima H0 atau antar sisaan tidak
saling berkorelasi. Berdasarkan hasil diagnostic model, dapat dikatakan bahwa model ARIMA
(1,2,1) merupakan model terbaik dan layak untuk data harga telur ayam di Provinsi Aceh.
Berdasarkan hasil di atas, nilai rataan MAPE minimum dimiliki oleh model ARIMA pada data 3
gerombol. Sehingga dapat dikatakan bahwa model ARIMA 3 gerombol memberikan hasil
peramalan yang baik bagi data harga telur ayam 32 provinsi di Indonesia.
PENUTUP
Kesimpulan
Berdasarkan hasil penelitian ini, diperoleh hasil bahwa model ARIMA pada 3 data gerombol
memberikan hasil peramalan yang cukup baik dibanding ARIMA secara individu dan ARIMA 2
dan 4 gerombol berdasarkan nilai MAPE minimum. Sehingga dapat ditarik kesimpulan bahwa
analisis gerombol pada data deret waktu baik digunakan apabila data memiliki tingkat keragaman
yang cukup tinggi.
Saran
Untuk penelitian selanjutnya, dapat dikembangkan dengan menggunakan metode jarak atau
pengukuran ketidakmiripan lainnya agar diperoleh hasil yang lebih baik.
DAFTAR PUSTAKA
Aghabozorgi S, Shirkhorshidi AS, Wah TY. 2015. Time-series clustering – A decade review.
Information Systems. 2015: 16-38.
Cryer JD, Chan KS. 2008. Time Series Analysis With Applications in R Second Edition. New
York: Springer.
Dinov IA. 2014. Hierarchical Clustering Pada Data Time Series Hotspot Provinsi Riau {Skripsi}.
IPB.
Montgomery DC, Jennings CL, Kulahci M. 2008. Introduction to Time Series Analysis and
Forecasting. New Jersey:John Wiley & Sons.
LAMPIRAN
Lampiran 1 Syntax Pemodelan ARIMA Individu
library(tseries)
library(forecast)
library(dtw)
library(cluster)
library(proxy)
library(TTR)
library(TSA)
#----------------------------ARIMA 34 PROVINSI------------------------------#
#mengecek stasioner dan homogen ragam dari data train untuk arima individu---
provinsi <- ncol(train)
pengamatan <- nrow(train)
hasil.adf <- rep(0, provinsi)
kesimpulan <- NULL
for(j in 1:provinsi)
{
hasil.adf[j] <- adf.test(train[, j])[["p.value"]]
kesimpulan[j] <- ifelse(hasil.adf[j]<0.05, "stasioner", "tidak stasioner")
}
hasil.adf <- cbind(hasil.adf, kesimpulan) #hasilnya semua provinsi tidak stasioner
#sumut
sumut <- ts(train$SUMATERA.UTARA)
plot.ts(sumut)
points(sumut)
sumut.dif <- diff(sumut, differences=2)
plot.ts(sumut.dif)
points(sumut.dif)
acf(sumut.dif)
pacf(sumut.dif)
eacf(sumut.dif)
arima(sumut.dif, order=c(0,0,1), method="ML")
arima(sumut.dif, order=c(1,0,0), method="ML")
arima(sumut.dif, order=c(1,0,1), method="ML")
model.sumut <- arima(sumut, order=c(1,2,1), method="ML")
sisaan.sumut <- model.sumut$residuals
Box.test(sisaan.sumut)
qqnorm(sisaan.sumut)
qqline(sisaan.sumut)
plot(as.numeric(sisaan.sumut))
#sumbar
sumbar <- ts(train$SUMATERA.BARAT)
plot.ts(sumbar)
points(sumbar)
sumbar.dif <- diff(sumbar, differences=2)
plot.ts(sumbar.dif)
points(sumbar.dif)
acf(sumbar.dif)
pacf(sumbar.dif)
eacf(sumbar.dif)
arima(sumbar.dif, order=c(0,0,1), method="ML")
arima(sumbar.dif, order=c(1,0,0), method="ML")
arima(sumbar.dif, order=c(1,0,1), method="ML")
model.sumbar <- arima(sumbar, order=c(1,2,1), method="ML")
sisaan.sumbar <- model.sumbar$residuals
Box.test(sisaan.sumbar)
qqnorm(sisaan.sumbar)
qqline(sisaan.sumbar)
plot(as.numeric(sisaan.sumbar))
. . . . . . . . . . . . . . . . . . hingga
#papua
papua <- ts(train$PAPUA)
plot.ts(papua)
points(papua)
papua.dif <- diff(papua, differences=1)
plot.ts(papua.dif)
points(papua.dif)
acf(papua.dif)
pacf(papua.dif)
eacf(papua.dif)
arima(papua.dif, order=c(0,0,1), method="ML")
arima(papua.dif, order=c(0,0,2), method="ML")
arima(papua.dif, order=c(1,0,1), method="ML")
arima(papua.dif, order=c(1,0,2), method="ML")
arima(papua.dif, order=c(2,0,1), method="ML")
model.papua <- arima(papua, order=c(2,1,1), method="ML")
sisaan.papua <- model.papua$residuals
Box.test(sisaan.papua)
qqnorm(sisaan.papua)
qqline(sisaan.papua)
plot(as.numeric(sisaan.papua))
#papua barat
pabar <- ts(train$PAPUA.BARAT)
plot.ts(pabar)
points(pabar)
pabar.dif <- diff(pabar, differences=1)
plot.ts(pabar.dif)
points(pabar.dif)
acf(pabar.dif)
pacf(pabar.dif)
eacf(pabar.dif)
arima(pabar.dif, order=c(1,0,0), method="ML")
arima(pabar.dif, order=c(0,0,1), method="ML")
arima(pabar.dif, order=c(1,0,1), method="ML")
arima(pabar.dif, order=c(0,0,2), method="ML")
arima(pabar.dif, order=c(2,0,0), method="ML")
model.pabar <- arima(pabar, order=c(1,1,1), method="ML")
sisaan.pabar <- model.pabar$residuals
Box.test(sisaan.pabar)
qqnorm(sisaan.pabar)
qqline(sisaan.pabar)
plot(as.numeric(sisaan.pabar))
library(tseries)
library(forecast)
library(dtw)
library(cluster)
library(proxy)
library(TTR)
library(TSA)
#-------------------------ARIMA CLUSTERING-----------------------#
#menentukan gerombol pakek dtw
train2 <- t(train)
matriks <- dist(train2,method = "DTW")
bb<-hclust(matriks,method = "average")
plot(bb, hang=0.3)
#k = 3----------------------------------------------------------------
#arima gerombol 1 (k=3)
plot.ts(train.13)
points(train.13)
acf(train.13)
pacf(train.13)
eacf(train.13)
#k = 4----------------------------------------------------------------
#arima gerombol ke 1 (k=4)
plot.ts(train.14)
points(train.14)
acf(train.14)
pacf(train.14)
a. 2 gerombol
b. 3 gerombol
c. 4 gerombol