teknik peramalan
TRANSCRIPT
PERAMALAN MENGGUNAKAN METODE PEMULUSAN (SMOOTHING)
PENGANTAR
Teknik peramalan sangat penting dalam berbagai bidang, yaitu ketika suatu prediksi
masa depan harus diikutsertakan dalam proses pengambilan keputusan. Sebagai contoh,
prediksi tentang kualitas udara, kualitas air, laju pengangguran, laju inflasi, dan beberapa hal
yang berkaitan dengan penentuan kebijakan pemerintah. Contoh lain misalnya suatu
perusahaan kereta api akan memerlukan prediksi jumlah penumpang pada hari-hari tertentu
sebagai pertimbangan manajemen dalam menambah rangkaian gerbong.
Suatu perusahaan yang bergerak di bidang bisnis tertentu khususnya, lebih banyak
membutuhkan peramalan peristiwa atau kondisi yang terjadi selama perusahaan itu
beroperasi. Berikut ini diberikan beberapa contoh situasi dimana peramalan dibutuhkan :
a. Departemen Marketing, peramalan permintaan produk dibutuhkan sebagai masukan dalam
penyusunan strategi pemasaran produknya.
b. Finansial, fluktuasi perdagangan saham dan kurs mata uang menjadi faktor yang sangat
penting dalam mempertahankan eksistensi suatu perusahaan. Karena itu, prediksi yang
handal sangat diperlukan untuk menentukan kebijakan manajemen.
c. Perencanaan produksi, peramalan kebutuhan material produksi sangat diperlukan.
Peramalan tersebut digunakan biasanya pada rentang waktu tertentu, baik harian,
mingguan maupun bulanan.
Dalam melakukan peramalan peristiwa yang akan terjadi di masa depan, seseorang
memerlukan informasi tentang peristiwa itu di masa lalu. Dengan kata lain, dalam melakukan
peramalan ke depan, seseorang harus melakukan analisa data masa lalu, dan menjadikannya
dasar untuk meramalkan di masa yang akan datang.
Seseorang biasanya melakukan peramalan melalui beberapa tahapan berikut:
a. melakukan analisa data masa lalu dengan tujuan untuk melihat pola/perilaku yang dapat
ditangkap dari data masa lalu.
Analisis Time Series Dedy Dwi Prastyo
2
b. Setelah ditemukan pola tertentu, dilakukan eksplorasi data masa lalu kemudian melakukan
pemodelan pada data itu untuk melakukan peramalan ke depan.
Data yang digunakan dalam peramalan merupakan suatu data time series. Time Series sendiri
merupakan observasi yang diamati secara kronologis dari waktu ke waktu.
Lebih dari beberapa dekade, banyak penelitian yang telah dilakukan untuk mempelajari dan
memprediksi masa depan. Penelitian-penelitian tersebut telah memberikan rekomendasi
beberapa metode untuk peramalan antara lain Naive Model, Moving Average, Exponential
Smoothing, sampai pada model yang lebih rumit seperti model Holt dan model Winter dan
pengembangan model-model peramalan lainnya seperti model kombinasi deterministik-
stokastik, ARIMA, fungsi transfer dan peramalan multivariabel.
Metode smoothing didasarkan pada ide bahwa ramalan yang handal dapat diperoleh
dengan cara memodelkan pola-pola di dalam data yang terlihat pada plot time series-nya,
kemudian melakukan suatu ekstrapolasi pola-pola itu untuk meramalkan masa depan.
Beberapa pola yang mungkin terjadi ketika suatu data akan dianalisa adalah :
a. Pola data Stasioner dari waktu ke waktu
Data yang stasioner mempunyai rata-rata (mean) dan varians yang konstan dari waktu ke
waktu. Untuk dapat menentukan apakah suatu data time series stasioner atau tidak, dapat
dilihat dari plot. Bila data tidak menunjukkan adanya kenaikan atau penurunan dari waktu
ke waktu maka data telah stasioner.
b. Membentuk sebuah tren, baik itu naik atau turun
Tren merupakan kondisi dimana terdapat flutuasi data yang cenderung naik atau turun.
c. Membentuk suatu pola musiman
Pola musiman dapat dilhat bila pada plot data terkadang naik dan terkadang turun dalam
jangka waktu atau periode tertentu. Panjang periode musiman dapat dilihat dari jarak
periode antar puncak atau antar lembah pada plot time series.
Analisis Time Series Dedy Dwi Prastyo
3
Tidak ada efek musiman
Terdapat efek musiman Additive
Terdapat efek musiman Multiplikatif
Tidak ada efek tren
Terdapat tren
Gambar 1. Pola data berkaitan dengan efek tren dan musiman
Bentuk plot time series diatas digunakan untuk menentukan metode smoothing mana yang
mungkin diterapkan. Karena itu, identifikasi awal untuk melihat pola data harus dilakukan
terlebih dahulu sebelum melakukan analisa peramalan lebih jauh.
Metode-metode smoothing yang akan dipelajari ini merupakan metode peramalan yang
tidak terlalu sulit dan cukup singkat untuk diaplikasikan. Dalam menentukan mana metode yang
memberikan hasil ramalan terbaik, seorang analis bisa saja menggunakan lebih dari satu
metode sekaligus, yang nantinya metode yang terbaik bisa diukur melalui kriteria ukuran
kesalahan peramalan.
PERAMALAN MENGGUNAKAN METODE SMOOTHING
Pola data time series dan metode smoothing yang sesuai untuk digunakan sebagai
peramalan adalah sebagai berikut:
Analisis Time Series Dedy Dwi Prastyo
4
POLA DATA Metode yang Sesuai Panjang Ramalan
Stasioner
Naïve model
Simple Average
Moving Average Jangka Panjang
Single Exponential Smoothing Jangka Pendek
Trend
Naïve model
Double Moving Average
Double Exponential Smoothing Jangka Pendek
Musiman Naïve model
Winter’s Model Jangka Pendek hingga menengah
Musiman dan
Trend
Naïve model
Winter’s Model Jangka Pendek hingga menengah
MODEL NAÏVE
Naïve Model merupakan metode paling sederhana yang digunakan untuk peramalan:
A. Pola Data Stasioner
Naïve Model adalah model yang paling sederhana untuk data yang stasioner dirumuskan
sebagai berikut:
1ˆt tY Y
B. Pola Data yang Mengandung Trend
Model yang paling sederhana untuk data yang mengandung trend dirumuskan sebagai
berikut:
1 1ˆ ( )t t t tY Y Y Y
atau
1
1
ˆ tt t
t
YY Y
Y
Analisis Time Series Dedy Dwi Prastyo
5
C. Pola Data Musiman atau Gabungan Musiman dan Trend
Model yang paling sederhana untuk data yang mengandung pola musiman atau gabungan
musiman dan trend dirumuskan sebagai berikut:
1 ( 1)ˆt t sY Y
Contoh:
Tahun Quarter t (Yt) Naïve 1 E (naïve 1) Naïve 2 E (naïve 2) Naïve 3 E (naïve 3)
2001 1 1 550 * * * * * *
2001 2 2 350 550 -200 * * * *
2001 3 3 250 350 -100 150 100 * *
2001 4 4 540 250 290 150 390 * *
2002 1 5 575 540 35 830 -255 550 25
2002 2 6 400 575 -175 610 -210 350 50
2002 3 7 350 400 -50 225 125 250 100
2002 4 8 550 350 200 300 250 540 10
2003 1 9 750 550 200 750 0 575 175
2003 2 10 500 750 -250 950 -450 400 100
2003 3 11 400 500 -100 250 150 350 50
2003 4 12 650 400 250 300 350 550 100
2004 1 13 850 650 200 900 -50 750 100
2004 2 14 600 850 -250 1050 -450 500 100
2004 3 15 450 600 -150 350 100 400 50
2004 4 16 700 450 250 300 400 650 50
2005 1 17 * 700 * 950 * 850 *
2005 2 18 * * * * * 600 *
2005 3 19 * * * * * 450 *
2005 4 20 * * * * * 700 *
MODEL AVERAGE (RATA-RATA)
A. Simple Average
Metode ini menggunakan nilai rata-rata semua data time series untuk meramalkan masa
mendatang. Metode ini digunakan untuk data yang stasioner, yaitu dirumuskan sebagai berikut:
1
1
ˆn
tt
t
YY
n
Analisis Time Series Dedy Dwi Prastyo
6
B. Moving Average
Metode ini menggunakan nilai rata-rata sejumlah data time series (di masa lalu) untuk
meramalkan masa mendatang. Metode ini digunakan untuk data yang stasioner, yaitu
dirumuskan sebagai berikut:
1 11
( )ˆ t t t nt t
Y Y YM Y
n
C. Double Moving Average
Setelah sejumlah moving average dihitung, maka dihiutng lagi sejumlah moving average
yang kedua. Hasil moving average yang kedua akan digunakan untuk melakukan peramalan.
Metode ini digunakan untuk data yang mengandung trend linier. Peramalan dilakukan melalui
beberapa tahap berikut:
i. 1 11
( )ˆ t t t nt t
Y Y YM Y
n
ii. 1 1( )t t t nt
M M MM
n
iii. 2t t ta M M
iv. 2
( )1
t t tb M Mn
Peramalan dilakukan menggunakan model berikut ini:
ˆt p t tY a b p
MODEL-MODEL EXPONENTIAL SMOOTHING
Prinsip dari metode exponential smoothing adalah menggunakan nilai penghalusan
secara eksponensial sebagai ramalan nilai masa mendatang. Model eksponensial secara umum
ada tiga macam:
A. Single Exponential Smoothing
Model ini biasa juga disebut model eksponensial sederhana. Model ini digunakan untuk
memodelkan data dengan pola stasioner. Model ini ditulis secara matematis sebagai berikut:
Analisis Time Series Dedy Dwi Prastyo
7
1 1t t tY Y Y dengan 0 1 (2)
Contoh: Gunakan data EMPLOY.MTW di MINITAB (variabel Metal)
Index
Me
tals
70635649423528211471
52
50
48
46
44
42
40
Smoothing Constant
Alpha 1.04170
Accuracy Measures
MAPE 1.11648
MAD 0.50427
MSD 0.42956
Variable
Forecasts
95.0% PI
Actual
Fits
Single Exponential Smoothing Plot for Metals
B. Double Exponential Smoothing (model Holt)
Model eksponensial sederhana ganda biasa disebut juga model Holt atau metode Brown.
Model ini digunakan untuk memodelkan data yang mengandung pola trend. Metode Double
Exponential Smoothing memberikan pembobotan pada observasi masa lalu secara berganda.
Pada dasarnya, Double Exponential Smoothing tetap menggunakan pembobotan model Single
Exponential Smoothing namun terdapat penambahan pembobot untuk mengestimasi adanya
trend pada data. Tahapan yang harus dilakuakan adalah sebagai berikut:
Pemulusan secara eksponensial (Taksiran Level)
1 11t t t tA Y A Y , dengan 0 1
Taksiran trend
1 11t t t tT A A T , dengan 0 1
Analisis Time Series Dedy Dwi Prastyo
8
Peramalan untuk p periode ke depan
ˆt p t tY A pT
Nilai tA menyatakan estimasi besarnya (level) nilai ramalan pada waktu t, nilai tT menyatakan
nilai slope pada waktu t. Nilai pembobotan dan dapat ditentukan oleh user, namun dalam
beberapa software telah dilakukan optimisasinya.
Contoh: Gunakan data EMPLOY.MTW di MINITAB (variabel Metal)
Index
Me
tals
70635649423528211471
58
56
54
52
50
48
46
44
42
40
Smoothing Constants
Alpha (level) 1.03840
Gamma (trend) 0.02997
Accuracy Measures
MAPE 1.19684
MAD 0.54058
MSD 0.46794
Variable
Forecasts
95.0% PI
Actual
Fits
Double Exponential Smoothing Plot for Metals
C. Model Holt-Winters
Model Holt-Winters digunakan untuk memodelkan data dengan pola musiman, baik
mengandung trend maupun tidak. Winter’s Method memberikan tiga pembobotan dalam
prediksinya, yaitu , , dan yang bernilai antara 0 dan 1. Pembobotan memberikan
Analisis Time Series Dedy Dwi Prastyo
9
pembobotan pada nilai ramalan, memberikan pembobotan pada slope, dan memberikan
pembobotan pada efek musiman. Winter’s Method mempunyai dua bentuk model. Bila
besarnya efek musiman konstan dari waktu ke waktu, maka bentuk model yang dipakai adalah
Additive Seasonality. Sedangkan bila besarnya efek musiman berubah dari waktu ke waktu,
maka bentuk model yang dipakai adalah Multiplicative Seasonality.
Model Holt-Winters Additive
Model ini digunakan apabila data time series mempunyai pola musiman dengan variasi
musiman konstan.
Level : 1 11t t t s t tL Y S L T
Trend : 1 11t t t tT L L T
Musiman : 1t t t t sS Y L S
Ramalan : t m t t t s mY L T m S
Model Holt-Winters Multiplicative
Model ini digunakan apabila data time series mempunyai pola musiman dengan variasi
musiman tidak konstan.
Level : 1 11tt t t
t s
YL L T
S
Trend : 1 11t t t tT L L T
Musiman : 1tt t s
t
YS S
L
Ramalan : t m t t t s mY L T m S
Contoh: Gunakan data EMPLOY.MTW di MINITAB (variabel Food)
Analisis Time Series Dedy Dwi Prastyo
10
Index
Foo
d
70635649423528211471
85
80
75
70
65
60
55
50
Smoothing Constants
Alpha (level) 0.2
Gamma (trend) 0.2
Delta (seasonal) 0.2
Accuracy Measures
MAPE 1.94769
MAD 1.15100
MSD 2.66711
Variable
Forecasts
95.0% PI
Actual
Fits
Winters' Method Plot for FoodAdditive Method
Index
Foo
d
70635649423528211471
85
80
75
70
65
60
55
50
Smoothing Constants
Alpha (level) 0.2
Gamma (trend) 0.2
Delta (seasonal) 0.2
Accuracy Measures
MAPE 1.88377
MAD 1.12068
MSD 2.86696
Variable
Forecasts
95.0% PI
Actual
Fits
Winters' Method Plot for FoodMultiplicative Method
Analisis Time Series Dedy Dwi Prastyo
11
Contoh di R (Holt-Winter Additive)
Gunakan data co2 menggunakan perintah berikut:
> co2 > plot(co2) > model1 <- HoltWinters(co2) # default: Holt-Winter Additive > ramalan <- predict(model1,50,prediction.interval=TRUE) > plot(model1,ramalan) > plot(fitted(model1)) Contoh di R (Holt-Winter Multiplicative)
Gunakan data AirPassengers menggunakan perintah berikut:
> data(AirPassengers) > plot(AirPassengers) > model2 <- HoltWinters(AirPassengers,,seasonal="mult") > ramalan2 <- predict(model2,24,prediction.interval=TRUE) > plot(model2,ramalan2) > plot(fitted(model2))
KRITERIA KEBAIKAN MODEL
Dalam melakukan peramalan, terkadang digunakan beberapa metode secara
bersamaan, kemudian mencari metode mana yang paling baik dan cocok untuk meramalkan
data tertentu. Proses pemilihan ini memerlukan beberapa kriteria yang dipakai acuan untuk
memilih metode yang terbaik. Beberapa poin berikut (a dan b) sangat penting untuk
diperhatikan bila dalam membuat peramalan terdapat beberapa alternatif pilihan model.
a. Ukuran Kesalahan Peramalan
Dalam melakukan prediksi, baik tidaknya hasil ramalan suatu model sangat menetukan
keputusan apakah model tersebut akan dipakai atau tidak. Sebuah model dengan kesalahan
peramalan yang terkecil tentunya akan dipilih untuk melakukan prediksi di masa
mendatang. Besarnya kesalahan tersebut dapat dihitung melalui ukuran kesalahan
peramalan, diantaranya sebagai berikut:
Analisis Time Series Dedy Dwi Prastyo
12
MAPE (Mean Absolute Percentage Error)
Prosentase kesalahan absolut rata-rata atau MAPE memberikan petunjuk seberapa
besar kesalahan peramalan dibandingkan dengan nilai sebenarnya. MAPE lebih banyak
digunakan untuk perbandingan pada data-data yang mempunyai skala interval waktu
berbeda. Misalnya membandingkan ketepatan ramalan suatu metode pada dua data
penjualan, dimana salah satu data diamati harian, dan data yang lain diamati bulanan.
1
ˆ1100
nt t
t t
y yMAPE
n y
MAD (Mean Absolute Deviation)
Simpangan absolut rata-rata atau MAD mengukur akurasi peramalan dengan merata-
ratakan nilai absolut kesalahan peramalan. Kesalahan diukur dalam unit ukuran yang
sama saperti data aslinya. MAD digunakan bila ingin membandingkan ketepatan
ramalan antara metode peramalan yang berbeda.
1
1ˆ
n
t t
t
MAD y yn
MSD (Mean Squared Deviation)
MSD sama dengan bentuk ukuran kesalahan MSE yang banyak dipakai sebagai ukuran
kesalahan dalam pemodelan statistik. MSD menggunakan penyebut n tanpa
memperhatikan derajat bebas model. MSD juga digunakan bila ingin membandingkan
ketepatan ramalan antara metode peramalan yang berbeda, namun MSD memberikan
ketelitian yang lebih baik daripada MAD sehingga banyak dipakai sebagai dasar dalam
optimalisasi pembobotan.
2
1
1ˆ
n
t t
t
MSD y yn
Secara umum, semakin kecil nilai suatu ukuran kesalahan, maka akan semakin baik suatu
model digunakan untuk prediksi. Namun untuk membandingkan antar metode peramalan
yang berbeda, ukuran yang lebih tepat adalah MSD dan MAD.
Analisis Time Series Dedy Dwi Prastyo
13
b. Ukuran Kesalahan Peramalan “out-of-sample”
Dalam membangun suatu model peramalan yang baik, ukuran kesalahan tidak hanya dilihat
dari hasil ramalan “in sample” (hasil ketepatan prediksi pada data masa lalu yang dipakai
untuk membangun model) tetapi juga hasil ramalan “out of sample” (hasil ramalan diluar
data yang dipakai untuk membangun model). Karena itu salah satu prosedur yang dilakukan
dalam membangun model peramalan adalah dengan membagi data time series yang
digunakan menjadi dua bagian yaitu initialization set dan test set. Tidak ada panduan
khusus tentang banyaknya bagian dari data keseluruhan yang dipakai untuk initializaton set
maupun test set. Beberapa literatur hanya membarikan acuan bahwa banyaknya test set
bisa mengacu pada seberapa jauh prediksi ke depan akan dilakukan (Makridakis, dkk.,
1998).
Initialization set digunakan untuk melakukan estimasi parameter di dalam model yang
dibangun, sedangkan test set digunakan untuk validasi apakah hasil ramalan dari model
(yang dibangun dari initialization set) memang memberikan hasil yang baik. Ukuran-ukuran
kesalahan MAPE, MAD dan MSD dapat juga dipakai untuk validasi ini. Makridakis, dkk
(1998) menyebutkan bahwa bila test set tidak digunakan, maka hasil-hasil ramalan semata-
mata dibuat tanpa melibatkan validasi ramalan pada data-data terbaru (saat ini). Hal ini juga
berguna untuk mewaspadai terjadinya overfitting pada saat model peramalan dibangun,
karena tidak jarang terjadi suatu model memberikan ramalan yang baik pada “in-sample”
namun ternyata memberikan ramalan yang jauh lebih jelek pada saat “out-of sample”.
TAHAPAN MEMBANGUN MODEL PERAMALAN
Makridakis, dkk. (1998) memberikan memperkenalkan beberapa tahapan yang harus dilalui
dalam membangun model peramalan.
Tahap 1
Data time series dibagi menjadi dua bagian yaitu initialization set dan test set. Banyaknya test
set dapat mengacu pada banyaknya peramalan ke depan yang akan dilakukan. Sebagai contoh,
bila dimiliki suatu data time series sebanyak 50 data, dan akan dilakukan peramalan sebanyak 5
periode ke depan (periode 51 sampai 55), maka banyaknya data untuk test set adalah 5 data
terakhir (periode 46 sampai 50), dan untuk initialization set adalah 45 data awal (periode 1
sampai 45).
Analisis Time Series Dedy Dwi Prastyo
14
Tahap 2
Memilih metode-metode peramalan yang mungkin dapat diaplikasikan pada data. Untuk itu,
identifikasi awal dengan melihat pada plot data sangat diperlukan pada tahap ini. Pemeriksaan
kondisi meliputi ada atau tidaknya tren yang terjadi serta ada atau tidaknya fluktuasi musiman
pada data.
Tahap 3
Melakukan pemodelan peramalan menggunakan initialization set dengan menerapkan metode-
metode yang telah dipilih pada tahap sebelumnya. Pada tahap ini, dihitung ukuran-ukuran
kesalahan MAPE, MAD dan MSD yang nantinya akan digunakan untuk memilih model yang
paling tepat diterapkan pada data.
Tahap 4
Melakukan peramalan ke depan sesuai model yang didapatkan di tahap 3. Peramalan dilakukan
sebanyak periode yang sesuai dengan banyaknya data pada test set untuk menghitung ukuran-
ukuran kesalahan MAPE, MAD dan MSD pada test set yang nantinya juga akan digunakan untuk
menentukan model yang paling tepat.
Tahap 5
Membandingkan beberapa alternatif metode peramalan yang mungkin diterapkan pada data
dengan melihat ukuran kesalahan baik pada initialization set, maupun pada test set. Model
terbaik akan diterapkan untuk prediksi ke depan.
Tahap 6
Setelah terpilih satu metode yang paling baik, maka peramalan kedepan dilakukan dengan
melibatkan seluruh data. Sebagai contoh, bila terdapat 50 data time series yang ingin
diramalkan ke depan sebanyak 5 periode (periode 51 sampai 55), dimana sebelumnya data
telah dibagi menjadi dua bagian (45 data initialization set, dan 5 data test set), maka peramalan
ke depan (dengan metode terbaik) dilakukan menggunakan keseluruhan 50 data.