Data dan Studi Kasus

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.

Penyelesaian

1. Buat objek ts dan plot data di atas. Apakah data menunjukkan tren yang cukup jelas?

Membuat Objek ts

# Data jumlah pengunjung
pengunjung <- c(210, 195, 220, 205, 230, 215,
                240, 225, 250, 235, 245, 260,
                255, 265, 270, 280, 275, 290)

# Membuat objek time series
data_ts <- ts(pengunjung,
              start = c(2023, 1),
              frequency = 12)

# Menampilkan data
data_ts
##      Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
## 2023 210 195 220 205 230 215 240 225 250 235 245 260
## 2024 255 265 270 280 275 290

Plot Runtun Waktu

# Plot data
plot(data_ts,
     type = "o",
     pch = 16,
     col = "green",
     main = "Jumlah Pengunjung Perpustakaan Kabupaten Serang",
     xlab = "Tahun",
     ylab = "Jumlah Pengunjung (orang/bulan)")

Interpretasi
Berdasarkan plot jumlah pengunjung perpustakaan dari Januari 2023 sampai Juni 2024, data menunjukkan tren yang cenderung meningkat. Meskipun terdapat beberapa penurunan pada bulan tertentu, seperti Februari 2023, April 2023, Juni 2023, Agustus 2023, Oktober 2023, dan Mei 2024,

2. Hitung dan plot SMA(3). Bandingkan dengan data asli pada 6 bulan terakhir, apakah SMA terlihat tertinggal?

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.

3. Hitung Double Moving Average dengan \(m = 3\) (hitung \(M'_t\), \(M''_t\), \(a_t\), dan \(b_t\)).

# 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.

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.

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.

Kesimpulan

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.