Berikut data jumlah pengunjung Perpustakaan Daerah Kabupaten Serang, Januari 2023–Juni 2024 (orang/bulan):
| Bulan | Jan | Feb | Mar | Apr | Mei | Jun | Jul | Agu | Sep | Okt | Nov | Des |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2023 | 210 | 195 | 220 | 205 | 230 | 215 | 240 | 225 | 250 | 235 | 245 | 260 |
| 2024 | 255 | 265 | 270 | 280 | 275 | 290 | - | - | - | - | - | - |
Pertanyaan:
1. Buat objek ts dan plot data di atas. Apakah data menunjukkan tren
yang cukup jelas?
2. Hitung dan plot SMA(3). Bandingkan dengan data asli pada 6 bulan
terakhir, apakah SMA terlihat tertinggal?
3. Hitung Double Moving Average dengan \(m =
3\) (hitung \(M'_t\), \(M''_t\), \(a_t\), dan \(b_t\)).
4. Gunakan hasil DMA untuk meramalkan jumlah pengunjung 1 dan 2 bulan
setelah data terakhir. Bandingkan dengan ramalan SMA biasa, lalu
jelaskan mengapa hasilnya berbeda.
Menghitung Nilai SMA(3)
SMA(3) berarti setiap nilai ramalan/perataan dihitung menggunakan
rata-rata 3 periode terakhir.
Rumusnya:
\[ SMA_t(3)=\frac{Y_t+Y_{t-1}+Y_{t-2}}{3} \]
# Menghitung SMA(3)
library(zoo)
sma3 <- rollmean(data_ts,
k = 3,
align = "right",
fill = NA)
# Menampilkan hasil SMA(3)
sma3## Jan Feb Mar Apr May Jun Jul Aug
## 2023 NA NA 208.3333 206.6667 218.3333 216.6667 228.3333 226.6667
## 2024 253.3333 260.0000 263.3333 271.6667 275.0000 281.6667
## Sep Oct Nov Dec
## 2023 238.3333 236.6667 243.3333 246.6667
## 2024
Interpretasi
Nilai SMA(3) mulai tersedia pada Maret 2023 karena perhitungannya
membutuhkan tiga pengamatan terakhir. Nilai SMA(3) diperoleh dengan
merata-ratakan tiga data aktual terakhir sehingga fluktuasi data menjadi
lebih halus.
Plot SMA(3)
# Plot data aktual dan SMA(3)
ts.plot(data_ts,
sma3,
type = "o",
col = c("green", "red"),
lty = c(1, 2),
main = "Data Aktual dan SMA(3)",
xlab = "Tahun",
ylab = "Jumlah Pengunjung (orang/bulan)")
legend("topleft",
legend = c("Data Aktual", "SMA(3)"),
col = c("green", "blue"),
lty = c(1, 2))
Interpretasi
SMA(3) terlihat mengalami efek lag terhadap data aktual. Hal ini
terutama terlihat ketika jumlah pengunjung mengalami kenaikan.Pada data
yang memiliki tren naik, SMA cenderung lebih rendah daripada data aktual
karena SMA menggunakan beberapa pengamatan sebelumnya.
Perbandingan SMA(3) dengan Data Aktual pada 6 Bulan Terakhir
# Mengambil 6 bulan terakhir
enam_bulan <- tail(
data.frame(
Periode = time(data_ts),
Aktual = as.numeric(data_ts),
SMA3 = as.numeric(sma3)
),
6
)
knitr::kable(
enam_bulan,
digits = 2,
col.names = c("Periode", "Data Aktual", "SMA(3)")
)| Periode | Data Aktual | SMA(3) | |
|---|---|---|---|
| 13 | 2024.00 | 255 | 253.33 |
| 14 | 2024.08 | 265 | 260.00 |
| 15 | 2024.17 | 270 | 263.33 |
| 16 | 2024.25 | 280 | 271.67 |
| 17 | 2024.33 | 275 | 275.00 |
| 18 | 2024.42 | 290 | 281.67 |
Interpretasi
Pada sebagian besar enam bulan terakhir, nilai SMA(3) berada di bawah
data aktual, terutama ketika data mengalami kenaikan. Pada Juni 2024,
data aktual sebesar 290 orang sedangkan SMA(3) sebesar 281,67 orang. Hal
ini menunjukkan bahwa SMA(3) terlihat tertinggal terhadap data
aktual.
# Menentukan orde moving average
m <- 3
# Moving Average pertama (M't)
Mp <- rollmean(data_ts,
k = m,
align = "right",
fill = NA)
# Moving Average kedua (M''t)
Mpp <- rollmean(Mp,
k = m,
align = "right",
fill = NA)
# Menghitung a_t
a_t <- 2 * Mp - Mpp
# Menghitung b_t
b_t <- (2 / (m - 1)) * (Mp - Mpp)
# Membuat tabel hasil DMA
hasil_dma <- data.frame(
Periode = time(data_ts),
Aktual = as.numeric(data_ts),
M1 = as.numeric(Mp),
M2 = as.numeric(Mpp),
a_t = as.numeric(a_t),
b_t = as.numeric(b_t)
)
hasil_dma## Periode Aktual M1 M2 a_t b_t
## 1 2023.000 210 NA NA NA NA
## 2 2023.083 195 NA NA NA NA
## 3 2023.167 220 208.3333 NA NA NA
## 4 2023.250 205 206.6667 NA NA NA
## 5 2023.333 230 218.3333 211.1111 225.5556 7.222222
## 6 2023.417 215 216.6667 213.8889 219.4444 2.777778
## 7 2023.500 240 228.3333 221.1111 235.5556 7.222222
## 8 2023.583 225 226.6667 223.8889 229.4444 2.777778
## 9 2023.667 250 238.3333 231.1111 245.5556 7.222222
## 10 2023.750 235 236.6667 233.8889 239.4444 2.777778
## 11 2023.833 245 243.3333 239.4444 247.2222 3.888889
## 12 2023.917 260 246.6667 242.2222 251.1111 4.444444
## 13 2024.000 255 253.3333 247.7778 258.8889 5.555556
## 14 2024.083 265 260.0000 253.3333 266.6667 6.666667
## 15 2024.167 270 263.3333 258.8889 267.7778 4.444444
## 16 2024.250 280 271.6667 265.0000 278.3333 6.666667
## 17 2024.333 275 275.0000 270.0000 280.0000 5.000000
## 18 2024.417 290 281.6667 276.1111 287.2222 5.555556
Interpretasi
Pada Juni 2024 diperoleh \(a_t=287,22\)
dan \(b_t=5,56\). Nilai \(b_t\) yang positif menunjukkan bahwa jumlah
pengunjung memiliki kecenderungan tren meningkat. Berdasarkan DMA,
jumlah pengunjung diperkirakan meningkat sekitar 5,56 orang per
bulan.
Ramalan jumlah pengunjung 1 dan 2 bulan setelah data
terakhir
Berdasarkan rumus peramalan DMA, ramalan \(p\) periode ke depan dihitung dengan:
\[\hat{Z}_{t+p} = a_t + b_t p\]
# Mengambil nilai a_t dan b_t terakhir
a_last <- tail(na.omit(a_t), 1)
b_last <- tail(na.omit(b_t), 1)
# Ramalan 1 bulan ke depan
forecast_1 <- a_last + b_last * 1
# Ramalan 2 bulan ke depan
forecast_2 <- a_last + b_last * 2
# Menampilkan hasil ramalan
ramalan <- data.frame(
Periode = c("Juli 2024", "Agustus 2024"),
Ramalan_DMA = c(forecast_1, forecast_2)
)
ramalan## Periode Ramalan_DMA
## 1 Juli 2024 292.7778
## 2 Agustus 2024 298.3333
Interpretasi Berdasarkan hasil DMA, jumlah pengunjung diramalkan sebesar 292,78 orang pada Juli 2024 dan meningkat menjadi 298,33 orang pada Agustus 2024. Kenaikan hasil ramalan tersebut mengikuti tren positif yang ditunjukkan oleh nilai \(b_t\)
Perbandingan Ramalan SMA(3) dan DMA
# Nilai SMA terakhir
sma_last <- tail(na.omit(sma3), 1)
# Ramalan SMA
forecast_sma_1 <- sma_last
forecast_sma_2 <- sma_last
# Membuat tabel perbandingan
perbandingan <- data.frame(
Periode = c("Juli 2024", "Agustus 2024"),
SMA_3 = c(forecast_sma_1, forecast_sma_2),
DMA = c(forecast_1, forecast_2)
)
perbandingan## Periode SMA_3 DMA
## 1 Juli 2024 281.6667 292.7778
## 2 Agustus 2024 281.6667 298.3333
Interpretasi
Ramalan SMA(3) menghasilkan nilai yang tetap, yaitu 281,67 orang untuk periode berikutnya. Sementara itu, DMA menghasilkan ramalan yang meningkat dari 292,78 orang pada Juli 2024 menjadi 298,33 orang pada Agustus 2024.
Perbedaan tersebut terjadi karena SMA hanya menggunakan rata-rata pengamatan terakhir, sedangkan DMA menambahkan komponen tren melalui \(b_t\). jadi, DMA tidak menghasilkan ramalan yang datar karena komponen tren dimasukkan secara eksplisit ke dalam peramalan.
Secara keseluruhan, jumlah pengunjung Perpustakaan Daerah Kabupaten Serang menunjukkan tren yang cenderung meningkat. Hasil SMA(3) menunjukkan adanya efek lag, terutama ketika data aktual mengalami kenaikan. Pada Juni 2024, data aktual sebesar 290 orang sedangkan SMA(3) sebesar 281,67 orang.
Hasil DMA dengan \(m=3\) menghasilkan \(a_t=287,22\) dan \(b_t=5,56\). Nilai \(b_t\) yang positif menunjukkan adanya tren peningkatan. Berdasarkan DMA, jumlah pengunjung diramalkan sebesar 292,78 orang pada Juli 2024 dan 298,33 orang pada Agustus 2024.
Perbedaan antara SMA dan DMA terjadi karena DMA mempertimbangkan komponen tren, sedangkan SMA hanya menggunakan rata-rata pengamatan terakhir. Oleh karena data menunjukkan tren naik, hasil DMA memberikan ramalan yang ikut meningkat, sedangkan ramalan SMA cenderung datar.