PEMBUATAN PERANGKAT LUNAK PERAMALAN MENGGUNAKAN METODE ANN DENGAN
MEMANFAATKAN LIBRARY ENCOG JAVA
Nama : Resa Alfarisi
NRP : 5207100100
Jurusan : Sistem informasi FTIF – ITS Dosen Pembimbing 1 : Wiwik Anggraeni S.Si.,M.Si
Tujuan Tugas Akhir
• Tujuan dari tugas akhir ini adalah membuat aplikasi peramalan berbasis desktop yang
menggunakan library encog java dan metode
artificial neural network sebagai metode
Batasan Tugas Akhir
Batasan masalah dari tugas akhir ini adalah sebagai berikut : • aplikasi berbasis desktop
• metode peramalan hanya menggunakan artificial neural
network.
• data yang digunakan diantaranya :
– data permintaan kamar hotel beserta faktor-faktor yang
mempengaruhinya (Anggono, Anggraeni, & Mukhlason, 2011). – data permintaan mobil di Austria beserta faktor-faktor yang
mempengaruhinya (Linawati, Anggraeni, & Vinarti, 2011). – dan data jumlah pengunjung yang masuk ke Hongkong dari
Manfaat Tugas Akhir
• Manfaat dari tugas akhir ini adalah membantu memudahkan praktisi perusahaan yang ingin melakukan peramalan penjualan dengan
langkah yang mudah dan tanpa harus membeli lisensi perangkat lunak.
SEKILAS RANCANGAN PERANGKAT
LUNAK
Deskripsi Umum
• Perangkat lunak yang akan dibuat pada tugas akhir ini adalah aplikasi peramalan.
• Metode peramalan menggunakan metode jaringan saraf tiruan atau artificial neural
network (ANN).
• Aplikasi peramalan berbasis desktop dengan data masukan berupa file excel berekstensi .xls.
Load File Excel
Pada tahap ini, pengguna diharapkan sudah memiliki file masukan berupa file Excel berekstensi .xls dengan format
Sedangkan data training dan data testing dipisahkan oleh sheet. Sehingga sheet data training diberi nama Training dan sheet untuk data testing diberim nama Testing
Normalisasi
• Dapat diliha pada pers dibawah jika batas nilai_normalisasi adalah [Ba,Bb].
Training
• Inisialisasi layer dan neuron disesuaikan dengan keinginan pengguna pada tahap sebelumnya.
• Fungsi aktivasi yang digunakan adalah fungsi aktivasi sigmoid. • Model pembelajaran menggunakan backprogagation.
• Inisialisasi bobot pembelajaran antara 0 sampai dengan 1.
• Perhitungan output dilakukan dengan memasukan nilai input ke dalam jaringan yang telah dibuat sebelumnya.
• Perbandingan nilai output dan nilai pada kelas target sebenarnya adalah berupa error atau kesalahan.
• Jika error masih kurang dari error yang diinginkan, maka error akan diperkecil dengan mengganti bobot dan bias.
• Jika error yang dinginkan tidak dapat tercapai pada saat epoch yang telah ditentukan, maka proses training akan berhenti.
Testing
• Nilai prediksi, yaitu nilai yang mamang diinginkan pengguna sebagai nilai ramalan pada periode tertentu. Sehingga fokus dari nilai adalah nilai peramalan yang dihasilkan.
• Nilai pesimis, yaitu nilai interval terbesar yang diharapkan pada periode berikutnya.
• Nilai optimis, yaitu nilai interval terendah yang dapat diterima pada periode berikutnya.
• Nilai most likely, yaitu nilai rata-rata dari history nilai sebelumnya.
• Nilai testing pada umumnya, yaitu perbandingan antara nilai yang dihasilkan dengan nilai sebenarnya. Sehingga fokus nilai terdapat pada nilai perbandingan tersebut, dalam hal ini adalah MAPE.
Data Percobaan 1
• Data permintaan (demand) kamar hotel
beserta faktor-faktor yang mempengaruhinya, diantaranya jumlah pengunjung dan kurs mata uang di negara tersebut.
• Penelitian sebelumnya menggunakan metode
vector autoregressive (VAR). (Anggono,
Data Percobaan 2
• Data permintaan (demand) mobil di Austria beserta faktor-faktor yang mempengaruhinya, diantaranya net price, price, diskon, on
promotion. Penelitian sebelumnya
menggunakan metode regresi berganda. Data-data tersebut mempunyai deret waktu
sebanyak 171 buah. (Linawati, Anggraeni, & Vinarti, 2011).
Data Percobaan 3
• Data jumlah pengunjung yang datang ke
Hongkong dari Jepang beserta faktor-faktor yang mempengaruhi besarnya. Penelitian
sebelumnya juga menggunakan metode ANN, sehingga tujuan untuk melakukan percobaan ini adalah melakukan validasi hasil keluaran aplikasi. (Law & Au, 1999)
Uji Coba Peramalan Kamar Hotel
• Data yang digunakan dibagi dua yaitu 12 bulan terakhir digunakan sebagai data testing dan
sisanya adalah data training.
• atribut input layer diantaranya jumlah pengunjung dan kurs mata.
• atribut output layer adalah permintaan kamar hotel.
Hasil Uji Coba Peramalan Kamar Hotel
• Epoch optimal : 3000
• Learning Rate Optimal : 0.3 • Momentum Optimal : 0.5
• MAPE Rata-rata (10 kali training dan testing): 9.069%
Perbandingan ANN dengan Metode
VAR
• Uji coba menunjukkan perbandingan keluaran peramalan antara metode ANN dengan
metode VAR, dimana metode ANN lebih baik dalam hal kesalahan peramalan (MAPE)
karena lebih sedikit persentase kesalahan yang diperoleh dari pada metode VAR.
Uji Coba Peramalan Permintaan Mobil
• Data yang digunakan dibagi menjadi 2 yaitu 34 data terakhir adalah data testing dan sisanya
adalah data training.
• atribut input layer meliputi net price, price, on promotion.
• atribut output layer adalah atribut yang
Hasil Uji Coba Peramalan Permintaan
Mobil di Austria
• Epoch optimal : 5000
• Learning Rate Optimal : 0.1 • Momentum Optimal : 0.5
Perbandingan ANN dengan Regresi
Berganda
• Uji coba menunjukkan perbandingan keluaran peramalan antara metode ANN dengan
metode Regresi Berganda, dimana metode ANN sama baik dalam hal kesalahan
peramalan (MAPE) walaupun nilainya lebih sedikit persentase kesalahan yang diperoleh dari pada metode Regresi Berganda.
Uji Coba Peramalan Jumlah
Pengunjung
• Attribut ouput layer adalah jumlah pengunjung yang datang ke Hong kong dari Jepang
• Beberapa variabel yang menjadi atribut pada input dan output layer pada peramalan permintaan mobil.
Atribut input layer meliputi :
– Service price in Hong Kong relative to Japan. – Harga rata-rata hotel di Hong Kong.
– Nilai tukar mata uang Jepang (¥) terhadap US$. – Total jumlah populasi orang di Jepang.
– Biaya promosi Hong Kong.
Hasil Uji Coba Peramalan Jumlah
Pengunung ke Hong Kong dari Jepang
• Epoch optimal : 8000
• Learning Rate Optimal : 0.5 • Momentum Optimal : 0.8
Perbandingan dengan Referensi
• Tujuannya hanya membandingkan dan menarik kesimpulan bahwa hasil yang diperoleh aplikasi sudah sesuai dengan referensi.
• Uji cobamenunjukkan bahwa keluaran aplikasi sudah sesuai dengan hasil penelitian Law & Au, 1999.
Kesimpulan
• Perbedaan hasil ramalan setiap percobaa (training dan testing) tidak selalu sama, walaupun parameter yang digunakan sama. Hal ini terjadi karena bobot dan
biasnya bernilai tidak sama dan selalu diacak setiap percobaan.
• Setelah membandingkan dengan metode Vector
Autoregressive (VAR) pada peramalan permintaan
kamar hotel, ANN memberikan hasil lebih baik dengan selisih MAPE sebesar 2.8%. Hasil tersebut diperoleh
Kesimpulan (2)
• Pada peramalan permintaan mobil di negara Austria, metode ANN juga memberikan hasil yang lebih baik dari pada metode regresi berganda, walupun selisih yang diperoleh tidak teralalu signifikan yaitu dengan selisih sebesar 0.46%. Hasil tersebut diperoleh dengan nilai learning rate 0.1, epoch 3000, dan momentum sebesar 0.5.
• Sedangkan pada peramalan jumlah pengunjung ke Hong Kong yang berasal dari Jepang, aplikasi
peramalan tugas akhir ini memberikan hasil ramalan yang mendekati hasil dari penelitian yang dilakukan
oleh Law dan Au tahun1999 dengan metode yang sama yaitu ANN.
Kesimpulan (3)
• Dapat dilihat bahwa data yang bersifat
stationer memiliki rata-rata error (MAPE) yang cukup besar. Sehingga, dapat disimpulkan
bahwa metode ANN lemah jika digunakan untuk meramalkan pada data yang bersifat stationer
Saran
• Karena rentang data hanya bernilai positif, maka aplikasi ini menggunakan sigmoid sebagai fungsi aktivasinya. Akan
lebih baik, aplikasi dapat memungkinkan untuk digunakan fungsi aktivasi selain sigmoid. Sebagai contoh jika data yang digunakan memiliki rentang nilai tidak hanya positif, maka dimungkinkan penggunaan fungsi aktivasi selain sigmoid. • Perlu adanya penelitian yang lebih dalam mengenai interval
kepercayaan (nilai pesimis, optimis, dan mostlikely) yang disesuaikan dengan jenis data dan point of view pengguna. • Perlu adanya pengembangan lebih lanjut pada peramalan
dengan menggunakan metode ANN pada data tidak stationer.