PENERAPAN JARINGAN SARAF TIRUAN UNTUK MEMPREDIKSI
PERGERAKAN HARGA MINYAK MENTAH DUNIA
MENGGUNAKAN METODE BACKPROPAGATION
SKRIPSI
AZIZAH ENDRASTATY
081401063
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
PENERAPAN JARINGAN SARAF TIRUAN UNTUK MEMPREDIKSI
PERGERAKAN HARGA MINYAK MENTAH DUNIA
MENGGUNAKAN METODE
BACKPROPAGATION
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh
ijazah Sarjana Komputer
AZIZAH ENDRASTATY
081401063
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
PERSETUJUAN
Judul : PENERAPAN JARINGAN SARAF TIRUAN
UNTUK MEMPREDIKSI PERGERAKAN HARGA MINYAK MENTAH DUNIA MENGGUNAKAN METODE BACKPROPAGATION
Kategori : SKRIPSI
Nama : AZIZAH ENDRASTATY
Nomor Induk Mahasiswa : 081401063
Program Studi : S1 ILMU KOMPUTER Departemen : ILMU KOMPUTER
Fakultas : FAKULTAS ILMU KOMPUTER DAN
TEKNOLOGI INFORMASI (FASILKOM-TI) UNIVERSITAS SUMATERA UTARA
Diluluskan di Medan, Juli 2013
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Amer Sharif, S.Si, M.Kom Dr. Poltak Sihombing, M.Kom
NIP. - NIP. 196203171991031001
Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer Ketua,
PERNYATAAN
PENERAPAN JARINGAN SARAF TIRUAN UNTUK MEMPREDIKSI PERGERAKAN HARGA MINYAK MENTAH DUNIA
MENGGUNAKAN METODE BACKPROPAGATION
SKRIPSI
Saya menyatakan bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Juli 2013
PENGHARGAAN
Alhamdulillah. Puji dan syukur penulis ucapkan kepada Allah SWT, atas limpahan rahmat dan karunia-Nya, tiada daya upaya kecuali dari Allah SWT. Alhamdulillah, penulis dapat menyelesaikan skripsi ini sebagai syarat untuk memperoleh gelar Sarjana Komputer, Program Studi Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
Tak lupa pula shalawat beriring salam tercurah kepada Rasullulah SAW, yang mengajarkan kepada manusia syari’at yang sempurna sehingga kita dapat menikmati islam.
Pada pengerjaan skripsi dengan judul penerapan jaringan saraf tiruan untuk memprediksi pergerakan harga minyak mentah dunia menggunakan metode
backpropagation, penulis menyadari bahwa banyak pihak yang turut membantu dan memotivasi dalam pengerjaannya. Dalam kesempatan ini, penulis mengucapkan terimakasih kepada:
1. Bapak Prof. Dr. dr. Syahril Pasaribu, DTM&H. M.Sc(CTM). SP.A(K), selaku Rektor Universitas Sumatera Utara.
2. Bapak Prof. Dr. Muhammad Zarlis, M.Sc, selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informasi.
3. Bapak Dr. Poltak Sihombing, M.Kom selaku dosen pembimbing dan Ketua Program Studi Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara yang telah memberikan nasehat, arahan dan motivasi kepada penulis dalam pengerjaan skripsi ini.
4. Bapak Amer Sharif, S.Si, M.Kom sebagai pembimbing yang telah memberikan nasehat, arahan, motivasi dan banyak membantu penulis dalam pengerjaan skripsi ini.
5. Bapak Ade Candra, S.T, M.Kom sebagai dosen penguji yang telah memberikan kritik dan saran kepada penulis dalam penyempurnaan skripsi ini.
6. Ibu Maya Silvi Lydia, B.Sc, M.Sc sebagai dosen penguji dan Sekretaris Program Studi Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara yang telah memberikan kritik dan saran kepada penulis dalam penyempurnaan skripsi ini
7. Kepada seluruh Dosen dan semua Pegawai di Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara. 8. Papa, Ir Bambang Sudibya, M.T dan Mama, Dra Mardiana Irawaty, M.Sc.St serta
adik-adik Iqbal Nur Khusein, Laila Khairunnisa Amini juga keluarga besar di Medan dan di Yogya yang telah memberikan do’a, dukungan, perhatian serta kasih sayang yang tulus serta pengorbanan yang tidak ternilai harganya.
9. Bapak Mohammad Andri Budiman, S.T, M.Comp.Sc, MEM selaku Pembina UKMI Al-Khuwarizmi, dan seluruh keluarga besar UKMI Al-Khuwarizmi yang selalu menginspirasi saya untuk terus berjuang dan berkarya.
10.Saudara-saudara seperjuangan saya di UKMI Ad-Dakwah USU, para penjalin ukhuwah penebar dakwah, mari sama-sama lulus dari kampus dan memperoleh gelar sarjana dengan indah.
11.Keluarga kecil saya di kampus, khususnya Murabbi, dan teman-teman halaqoh
semuanya, yang senantiasa mengingatkan untuk cepat lulus dan berprestasi.
12.Seluruh adik-adik binaan Ilkom yang spesial, Bunga, Fura, Ema, Dini, Murni, Nisa, Ika, Dias, Novi, Nurul, Amel, Puput FISIP, Ida, Tika, Ain, Endang, Fatimah, Annisa dan juga adik-adik lainnya yang tidak bisa disebut satu per satu. Adik-adik yang selalu memberikan perhatian dan doa kepada penulis.
13.Teman-teman mahasiswa S1-Ilmu Komputer stambuk 2008, terutama kepada Sadifa Asrofa, Rima Lestari, Alvi Syukriati Hsb, Anni Magfirah, Zainuddin Siregar dan Eko Verdianto yang banyak membantu dan juga memotivasi penulis.
14.Teman-teman di Asrama Putri, Dita, Yati, Qomariah,S.Sos, Ema, Yani, Asih, yang juga sedang mengerjakan skripsi. Teman-teman yang selalu menghibur dan memberikan nasehat serta motivasi.
15.Semua pihak yang terlibat langsung ataupun tidak langsung yang tidak dapat penulis ucapkan satu per satu yang telah membantu penyelesaian skripsi ini.
Penulis menyadari bahwa skripsi ini masih jauh dari kesempurnaan, oleh karena itu penulis menerima saran dan kritik yang bersifat membangun demi kesempurnaan skripsi ini. Sehingga dapat bermanfaat bagi kita semuanya.
Medan, Juli 2013
ABSTRAK
Setiap tahun pergerakan harga minyak dari waktu ke waktu selalu menjadi sorotan pelaku ekonomi dunia. Pada kenyataannya pergerakan harga minyak yang terjadi umumnya dapat dipahami dengan melihat pola kejadian di masa lalu. Penulis memaparkan perancangan sistem prediksi harga minyak mentah dunia menggunakan metode jaringan saraf tiruan backpropagation. Masukan dalam sistem ini adalah harga minyak mentah menurut harga pasar WTI (West Texas Intermediate). Pada sistem ini terdapat tahap pelatihan dan tahap prediksi. Tahap pelatihan digunakan untuk mempelajari pola masukan sebanyak 320 data harga minyak yang terbagi dalam empat neuron masukkan. Sedangkan tahap prediksi digunakan untuk menghasilkan pola harga minyak dengan merujuk pada data yang dihasilkan di tahap pelatihan. Data tersebut antara lain: bobot pelatihan, mean dan standart deviasi. Arsitektur jaringan terdiri dari empat lapisan, satu lapisan masukan, dua lapisan tersembunyi dan satu lapisan keluaran. Terdapat empat neuron pada lapisan masukan, 12 neuron pada lapisan tersembunyi pertama, delapan neuron pada lapisan tersembunyi kedua dan satu neuron pada lapisan keluaran. Dari proses pelatihan didapat nilai kesalahan terbesar 8.86 x 10-6 dengan jumlah epoch terbesar 45 iteration, laju pembelajaran 0.1 dan momentum 0.9. Pada tahap pelatihan secara keseluruhan, hasil pencapaian sistem diperoleh kecocokan 99.9%. Sedangkan, pada tahap prediksi jaringan saraf tiruan diperoleh selisih harga minyak berkisar antara 0.1826 hingga 5.951 dengan tingkat
error RMSE sekitar 2.8996.
ARTIFICIAL NEURAL NETWORK IMPLEMENTATION FOR PREDICTING THE WORLD CRUDE OIL PRICE MOVEMENT
USING BACKPROPAGATION METHOD
ABSTRACT
Every year the oil price movement is always a highlight in the global economy. In fact the movement of oil price that occurred generally can be understood by looking at the pattern of events in the past. In this study, the Author designed a system to predict crude oil price using the backpropagation method of artificial neural network. Input of this system is the price of crude oil according to the market price of WTI (West Texas Intermediate). In this system, there are training and prediction phases. Training phase is used to learn the patterns of input which consisted of 320 oil price data distributed into four neurons. While the obtained prediction phase is used to produced oil price pattern based on parameter which is obtained during training phase such as: training weight, mean and standard of deviation. Network architecture consisted of four layers, one input layer, two hidden layers and one output layer. There are four neurons in the input layer, 12 neurons in the first hidden layer, eight neurons in the second hidden layer and one neuron in output layer. From the training process the largest obtained error is 8.86 x 10-6 with the maximum epoch reached was 45 iterations, the learning rate 0.1 and momentum 0.9. In training phase, in overall, the results of system was 99.9%. while, in the neural network artificial prediction phase, the different of oil price obtained in the range between 0.1826 to 5.951 with the RMSE error level of 2.8996.
Keywords: Artificial Neural Networks, Backpropagation method, Crude Oil Prices, Rising Oil Prices, Forecasting
DAFTAR ISI
Bab 2 Tinjauan Pustaka
2.1 Jaringan Saraf Tiruan 7
2.1.1 Arsitektur Jaringan Saraf Tiruan 7 2.1.2 Jaringan Saraf Tiruan Backpropagation 9
2.1.3 Fungsi Aktivasi 11
2.1.4 Algoritma Pembelajaran Metode Backpropagation 13 2.1.5 Prepocessing dan Postprocessing 16 2.2 Aplikasi Backpropagation dalam prediksi 18 2.3 Prediksi Harga Minyak Mentah Dunia 20
2.4 Tinjauan yang relevan 20
Bab 3 Analisis Dan Perancangan Sistem
3.1 Analisis Permasalahan 22
3.2 Analisis Kebutuhan Sistem 25
3.2.1Kebutuhan fungsional Sistem 25 3.2.2 Kebutuhan Non-fungsional Sistem 25
3.3 Permodelan 26
3.3.1 Use Case Diagram 26
3.3.1.1 Use Case Cek Data Harga Minyak 27 3.3.1.2 Use Case Cek Pelatihan 28 3.3.1.2 Use Case Cek Prediksi Harga Minyak 31
3.2.2 Analisis Proses Sistem 32
3.4 Perancangan Antar Muka 36 3.4.1 Perancangan Antar Menu Utama 36
3.4.2 Perancangan Cek data 37
3.4.3 Antar Muka Pelatihan 38
3.4.4 Antar Muka Prediksi 40
3.4.5 Antar Muka Konfirmasi Keluar 41
Bab 4 Implementasi dan Pengujian Sistem
4.1 Implementasi Sistem 42
4.1.1 Tampilan Antarmuka Sistem 43
4.1.1.1 Antarmuka Menu Utama 43
4.1.1.2 Antarmuka Cek Data 43
4.1.1.3 Antarmuka Pelatihan 45
4.1.1.4 Antarmuka Prediksi 50
4.2 Pengujian Sistem 53
4.2.1 Pengujian Arsitektur JST 53
4.2.2 Pengujian Prediksi Harga Minyak 54
Bab 5 Kesimpulan Dan Saran
5.1 Kesimpulan 58
5.2 Saran 59
Daftar Pustaka ` 60
Lampiran Listing Program A-1
DAFTAR TABEL
Nomor Tabel Keterangan Halaman
3.1 Kelompok Data yang Memiliki Pola yang Berulang 23
3.2 Grafik Data yang Memiliki Pola yang Berulang 24
3.3 Dokumentasi Naratif Use Case Cek Data Harga Minyak
Mentah Dunia
27
3.4 Dokumentasi Naratif Use Case Latih JST 28
3.5 Dokumentasi Naratif Use Case Prediksi Harga Minyak
Mentah Dunia
31
4.1 Hasil Pengujian dengan Beberapa Data Pelatihan JST 53
DAFTAR GAMBAR
Nomor Gambar
Keterangan Halaman
2.1 Model Neuron 8
2.2 Arsitektur Jaringan Saraf Tiruan dengan
Backpropagation
10
2.3 Fungsi Aktivasi Linier 11
2.4 SigmoidBiner 12
2.5 Sigmoid Bipolar 13
3.1 Diagram Ishikawa 22
3.2 Grafik harga minyak tahun 2012 dan awal 2013 22
3.3 Use Case Diagram Sistem Prediksi Harga Minyak
Mentah Dunia
27
3.4 Activity Diagram Cek Harga Minyak 28
3.5 Activity Diagram Pelatihan 30
3.6 Activity Diagram Prediksi Harga Minyak 32
3.7 Sequence Diagram Proses Pelatihan JST 33
3.8 Sequence Diagram Proses Pelatihan JST 35
3.9 Rancangan Antarmuka Depan 36
3.10 Rancangan Antarmuka Cek Data 37
3.11 Rancangan AntarmukaPelatihan 38
3.12 Rancangan Antarmuka Prediksi 40
3.13 Rancangan AntarmukaKonfirmasi Keluar 41
4.1 Antarmuka Menu Utama 43
4.2 Antarmuka Cek Data 44
4.3 Antarmuka Cek Data Ketika telah memilih Bulan dan
Tahun
44
4.4 Antarmuka Proses Pemberitahuan proses 45
4.5 Antarmuka Pelatihan 46
4.6 Antarmuka Neural Network Training (nntool) 47
4.8 Antarmuka Pelatihan Setelah mengklik tombol tampil 49
4.9 Antarmuka Prediksi 50
4.10 Antarmuka Pengujian Setelah dilakukan prediksi 51
4.11 Antarmuka Prediksi perbandingan data aktual dengan
hasil prediksi
52
4.12 Antarmuka konfirmasi keluar 52
ABSTRAK
Setiap tahun pergerakan harga minyak dari waktu ke waktu selalu menjadi sorotan pelaku ekonomi dunia. Pada kenyataannya pergerakan harga minyak yang terjadi umumnya dapat dipahami dengan melihat pola kejadian di masa lalu. Penulis memaparkan perancangan sistem prediksi harga minyak mentah dunia menggunakan metode jaringan saraf tiruan backpropagation. Masukan dalam sistem ini adalah harga minyak mentah menurut harga pasar WTI (West Texas Intermediate). Pada sistem ini terdapat tahap pelatihan dan tahap prediksi. Tahap pelatihan digunakan untuk mempelajari pola masukan sebanyak 320 data harga minyak yang terbagi dalam empat neuron masukkan. Sedangkan tahap prediksi digunakan untuk menghasilkan pola harga minyak dengan merujuk pada data yang dihasilkan di tahap pelatihan. Data tersebut antara lain: bobot pelatihan, mean dan standart deviasi. Arsitektur jaringan terdiri dari empat lapisan, satu lapisan masukan, dua lapisan tersembunyi dan satu lapisan keluaran. Terdapat empat neuron pada lapisan masukan, 12 neuron pada lapisan tersembunyi pertama, delapan neuron pada lapisan tersembunyi kedua dan satu neuron pada lapisan keluaran. Dari proses pelatihan didapat nilai kesalahan terbesar 8.86 x 10-6 dengan jumlah epoch terbesar 45 iteration, laju pembelajaran 0.1 dan momentum 0.9. Pada tahap pelatihan secara keseluruhan, hasil pencapaian sistem diperoleh kecocokan 99.9%. Sedangkan, pada tahap prediksi jaringan saraf tiruan diperoleh selisih harga minyak berkisar antara 0.1826 hingga 5.951 dengan tingkat
error RMSE sekitar 2.8996.
ARTIFICIAL NEURAL NETWORK IMPLEMENTATION FOR PREDICTING THE WORLD CRUDE OIL PRICE MOVEMENT
USING BACKPROPAGATION METHOD
ABSTRACT
Every year the oil price movement is always a highlight in the global economy. In fact the movement of oil price that occurred generally can be understood by looking at the pattern of events in the past. In this study, the Author designed a system to predict crude oil price using the backpropagation method of artificial neural network. Input of this system is the price of crude oil according to the market price of WTI (West Texas Intermediate). In this system, there are training and prediction phases. Training phase is used to learn the patterns of input which consisted of 320 oil price data distributed into four neurons. While the obtained prediction phase is used to produced oil price pattern based on parameter which is obtained during training phase such as: training weight, mean and standard of deviation. Network architecture consisted of four layers, one input layer, two hidden layers and one output layer. There are four neurons in the input layer, 12 neurons in the first hidden layer, eight neurons in the second hidden layer and one neuron in output layer. From the training process the largest obtained error is 8.86 x 10-6 with the maximum epoch reached was 45 iterations, the learning rate 0.1 and momentum 0.9. In training phase, in overall, the results of system was 99.9%. while, in the neural network artificial prediction phase, the different of oil price obtained in the range between 0.1826 to 5.951 with the RMSE error level of 2.8996.
Keywords: Artificial Neural Networks, Backpropagation method, Crude Oil Prices, Rising Oil Prices, Forecasting
BAB 1
PENDAHULUAN
1.1Latar Belakang
Perkembangan kecerdasan buatan yang semakin pesat dewasa ini ditunjukkan oleh
aplikasinya diberbagai bidang. Salah satu cabang dari kecerdasan buatan yang
sudah dikenal adalah jaringan saraf tiruan (artificial neural network). Jaringan
saraf tiruan adalah suatu sistem pengolah informasi yang karakteristik kerjanya
menyerupai jaringan saraf biologis manusia[1]. Perkembangan ini didukung oleh
kemajuan bidang komputer baik dari perangkat lunak (software) maupun perangkat
keras (hardware).
Jaringan saraf tiruan telah banyak digunakan pada berbagai riset di berbagai
bidang. Dalam ilmu komputer dan Informatika, aplikasi jaringan saraf tiruan telah
banyak dibuktikan keberhasilannya, antara lain: sebagai alat pengenalan pola (pattern
recognition), signal processing, dan sebagai peramalan atau prediksi.
Jaringan saraf tiruan dapat dipakai untuk memprediksi apa yang akan terjadi di
masa yang akan datang berdasarkan pola kejadian yang ada di masa yang lampau. Ini
dapat dilakukan mengingat kemampuan jaringan saraf tiruan untuk mengenali pola
dan membuat generalisasi dari apa yang sudah ada sebelumnya.
Salah satu metode jaringan saraf tiruan yang digunakan untuk prediksi adalah
Backpropagation. Prediksi yang sering kita dengar adalah prediksi penjualan[4], nilai
Dalam penitian ini jaringan saraf tiruan yang digunakan adalah model
backpropagation. Backpropagation melatih jaringan untuk mendapatkan
keseimbangan antara kemampuan jaringan untuk mengenali pola yang digunakan
selama pelatihan serta kemampuan jaringan untuk memberikan respon yang benar
terhadap pola masukan yang serupa dengan pola yang dipakai selama pelatihan[3].
Sebagaimana telah umum diketahui, setiap tahun pergerakan harga minyak
dari waktu ke waktu selalu menjadi sorotan pelaku ekonomi dunia. Hal tersebut tidak
lepas dari transmisi yang disalurkan dari salah satu komoditas energi ini. Minyak tidak
hanya sebatas mampu mempengaruhi komoditas energi lain maupun komoditas
mineral lain, tapi juga sangat berpengaruh terhadap pergolakan sendi perkenomian
makro maupun mikro hampir di seluruh negara.
Sebagian kalangan tentunya sudah memahami bagaimana harga minyak dapat
naik ataupun turun. Namun bagi sebagian lainnya, hal ini agaknya menjadi pertanyaan
menarik mengapa dan apa penyebab serta bagaimana keseimbangan harga minyak
terjadi. Di tengah kompleksitasnya, dengan beragam faktor yang berkaitan satu sama
lain dan saling mempengaruhi, pada kenyataannya pergerakan harga minyak yang
terjadi umumnya dapat dipahami dengan melihat pola kejadian di masa lalu dengan
memperhatikan faktor fundamental yang mempengaruhi naik dan turunnya harga
minyak mentah dunia
Berdasarkan latar belakang yang telah disebutkan penulis akan membuat suatu
penelitian yang berjudul "Penerapan Jaringan Saraf Tiruan untuk Memprediksi
Pergerakan Harga Minyak Mentah Dunia Menggunakan Metode Backpropagation”
1.2Rumusan Masalah
Permasalahan yang akan dibahas dalam penelitian ini antara lain :
1. Harga minyak dalam negeri sering berubah-ubah karena mengikuti harga
minyak mentah dunia mengakibatkan kesulitan dalam menyusun kebijakan
mentah dunia diharapkan dapat menjadi alat bantu bagi penyusun kebijakan
ekonomi.
2. Meneliti faktor-faktor yang mempengaruhi harga minyak mentah dunia dengan
jaringan saraf tiruan
3. Mengukur performa jaringan saraf tiruan dalam memprediksi harga minyak
mentah dunia
1.3Batasan Masalah
Batasan masalah yang menjadi acuan dalam pengerjaan skripsi ini adalah:
1. Penerapan jaringan saraf tiruan yang diimplementasikan menggunakan metode
backpropagation
2. Menggunakan data kuantitatif harga minyak mentah dari tanggal 1 Januari 2010
sampai 30 April 2013
3. Input yang diterapkan dalam sistem adalah harga minyak mentah dunia versi
pasar minyak WTI (West Texas Intermediate) Selain WTI, ada beberapa pasar
minyak, antara lain : Minas, Tapas, Brent.
4. Implementasi sistem pada penelitian ini menggunakan Matlab R2009.
1.4Tujuan Penelitian
Penulisan ini dibuat dengan tujuan menggunakan jaringan saraf tiruan
backpropagation untuk memprediksi pergerakan harga minyak mentah dunia
1.5Manfaat Penelitan
Manfaat dari penelitian ini adalah:
1. Mampu memprediksi pergerakan harga minyak mentah dunia, sebagai alat bantu
2. Dengan prediksi harga minyak diharapkan dapat menjadi acuan harga minyak di
masa depan dan memberi gambaran untuk prediksi hal-hal lain yang terkait
dengan harga minyak mentah dunia untuk memudahkan para pengambil kebijakan
untuk menetapkan harga minyak mentah dalam negeri
3. Menambah pemahaman mengenai jaringan saraf tiruan dalam hal pembelajaran
dan penerapannya.
1.6 Metode Penelitian
Metodologi penelitian yang akan digunakan adalah:
1. Studi Literatur
Mempelajari literatur tentang teori dasar mengenai jaringan saraf tiruan,
metode-metode dalam jaringan saraf tiruan, kegunaan jaringan saraf tiruan dalam hal
prediksi (forecasting), metode backpropagation dan cara kerjanya. Literatur
diambil dari beberapa buku, jurnal, maupun penelitian yang terkait.
2. Analisis Data
Pada tahap ini dilakukan analisis kebutuhan terhadap sistem beserta
batasan-batasan yang diperlukan. Menganalisis metode backpropagation dan
modifikasi-modifikasi untuk mempercepat pelatihannya. Serta, menganalisis mengenai harga
minyak mentah dunia, khususnya mencari periode perulangan pola.
3. Perancangan Sistem
Melakukan perancangan desain dalam bentuk diagram use case, dan antar muka
sistem untuk memudahkan proses implementasi pada tahap selanjutnya.
4. Implementasi Sistem
Pada tahap ini dilakukan pembuatan sistem sesuai dengan analisis dan
perancangan yang sudah didefinisikan sebelumnya. Implementasi sistem
5. Pengujian Sistem
Pengujian dilakukan terhadap keberhasilan prediksi yang dilakukan oleh jaringan
saraf tiruan menggunakan metode backpropagation berdasarkan pada data aktual
yang diperoleh. Sejauh mana jaringan saraf tiruan dapat digunakan untuk prediksi
dan bagaimana tingkat akurasi antara hasil prediksi dan data aktual.
6. Dokumentasi Sistem
Melakukan pembuatan dokumentasi sistem mulai dari tahap awal hingga
pengujian sistem, untuk selanjutnya dibuat dalam bentuk laporan penelitian
(skripsi).
1.7Sistematika Penulisan
Sistematika penulisan laporan penelitian ini dibagi menjadi 5 bab, yaitu sebagai
berikut:
BAB 1 PENDAHULUAN
Berisikan penjelasan tentang konsep dasar penyusunan skripsi,
yaitu mengenai latar belakang pemilihan judul, rumusan
masalah, batasan masalah, tujuan penelitian, manfaat penelitian,
metode penelitian, dan sistematika penulisan.
BAB 2 TINJAUAN PUSTAKA
Bab ini akan membahas dasar teori yang menunjang penulisan
skripsi, berkaitan mengenai teori jaringan saraf tiruan, arsitektur
jaringan saraf tiruan, algoritma pembelajaran backpropagation,
fungsi aktivasi, preprocessing dan postprocessing harga minyak
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
Bab ini membahas tentang analisis dan perancangan sistem
dengan menggunakan jaringan saraf tiruan backpropagation.
BAB 4 IMPLEMENTASI DAN PENGUJIAN
Pada bab ini akan menjelaskan implementasi jaringan saraf
tiruan backpropagation yang digunakan, serta pengujian akan
keberhasilan terhadap sistem yang telah dibangun.
BAB 5 KESIMPULAN DAN SARAN
Bab ini akan memuat kesimpulan isi dari keseluruhan uraian
bab-bab sebelumnya dan saran-saran dari hasil yang diperoleh
yang diharapkan dapat bermanfaat untuk pengembangan
BAB 2
TINJAUAN PUSTAKA
2.1 Jaringan Saraf Tiruan
Jaringan saraf tiruan (JST) pertama kali diperkenankan oleh
informasi yang memiliki karakteristik-karakteristik menyerupai jaringan saraf biologi
[2].
Dengan meniru sistem jaringan biologis maka sistem jaringan saraf tiruan
memiliki 3 karakteristik utama, yaitu [1]:
1. Arsitektur jaringan
Merupakan pola keterhubungan antara neuron. Keterhubungan neuron
-neuron inilah yang membentuk suatu jaringan.
2. Algoritma Pembelajaran
Merupakan metode untuk menentukan nilai bobot hubungan. Ada dua jenis
metode utama, yaitu metode pelatihan atau pembelajaran (memorisasi) dan
metode pengenalan atau aplikasi.
3. Fungsi Aktivasi
Merupakan fungsi untuk menentukan nilai keluaran (output) berdasarkan
nilai total masukan (input) pada neuron. Fungsi aktivasi suatu algoritma
jaringan dapat berbeda dengan fungsi aktivasi algoritma jaringan lain.
2.1.1 Arsitektur jaringan saraf tiruan
Satu sel saraf dapat dimodelkan secara matematis seperti diilustrasikan oleh Gambar
Synaptic weights
fungsi aktivasi (activation function) dan keluaran (output). Secara matematis, dapat
digambarkan sebuah neuron dengan menuliskan pasangan persamaan sebagai berikut:
Gambar 2.1. Model Neuron[1]
f(.) = fungsi aktivasi atau elemen pemroses
y = sinyal keluaran.
Beberapa konsep yang berhubungan dengan pemrosesan informasi tersebut
seperti yang disebutkan di atas, yaitu:
1. Input
Nilai numerik atau representasi suatu atribut merupakan input dari
jaringan. Beberapa tipe data seperti teks, gambar dan suara dapat juga
digunakan sebagai input.
2. Output
Output jaringan berisi solusi untuk permasalahan.
3. Bobot (weights)
Unsur kunci Jaringan saraf tiruan adalah bobot. Bobot menunjukkan suatu
banyaknya koneksi yang memindahkan data dari satu lapisan ke lapisan
yang lainnya. Bobot sangat penting karena menyimpan pola pembelajaran
dari informasi.
4. Fungsi Penjumlahan
Fungsi penjumlahan merupakan perkalian setiap nilai input dengan
bobotnya.
5. Fungsi Aktivasi
Fungsi aktivasi merupakan hubungan antara tingkat aktivasi internal dan
output yang bisa berupa linier atau non-linier
Arsitektur pada jaringan saraf tiruan menggambarkan jumlah neuron dan
hubungan bobot yang dipakai dan fungsi aktivasi. Secara umum arsitektur jaringan
saraf dapat dibedakan menjadi tiga kelas yang berbeda, yaitu jaringan umpan-maju
lapisan tunggal (single layer feedforward network atau perceptron), jaringan
umpan-maju lapisan jamak (multilayer perceptron) dan jaringan dengan lapisan kompetitif
[6].
2.1.2 Jaringan saraf tiruan backpropagation
Terdapat banyak ide dan definisi yang berhubungan dengan “belajar”. Taksonomi
proses belajar dalam jaringan saraf tiruan dibagi secara umum menjadi dua bagian [5]:
1. Supervised learning
Supervised learning adalah proses belajar yang membutuhkan guru. Yang
dimaksud guru disini adalah sesuatu yang memiliki pengetahuan tentang
lingkungan. Guru bisa direpresentasikan sebagai sekumpulan sampel
input-ouput.
2. Unsupervised learning
Sesuai dengan namanya, unsupervised atau self-organized learning tidak
membutuhkan guru untuk memantau proses belajar. Dengan kata lain,
tidak ada sekumpulan input-output atau fungsi tertentu untuk dipelajari
Jaringan saraf tiruan backpropagation dikategotikan sebagai supervised
learning yang melakukan pembelajaran sehinggamemberikan output yang masuk akal
jika diberi masukan serupa (tidak harus sama) dengan pola yang dipakai dalam
pelatihan. Sifat generalisasi ini membuat pelatihan lebih efisien karena tidak perlu
dilakukan pada semua data [9].
Backpropagation dibentuk dengan membuat generalisasi aturan pelatihan
dalam model widrow-hoff dengan cara menambahkan layer tersembunyi. Kata
backpropagation merujuk pada cara bagaimana gradien perubahan bobot dihitung.
Suatu jaringan saraf tiruan backpropagation memproses informasi masukan
pada setiap neuron. Pada gambar 2. ditunjukkan arsitektur JST backpropagation
dengan tiga layer dimana unit masukan X, unit hidden layer Z, dan unit keluaran Y.
Sedangkan v0j adalah nilai bias untuk hidden layer Z dan wok adalah nilai bias untuk
keluaran Y.
Y1 Yk Ym
w01 w11 wj1 wp1 w0k w1k wjk wpk w0m w1m wjm wpm
Z1 Zj Zp
X1 Xi Xn
v01 v11 vi1 vn1 v0j v1j vij vnj v0p v1p vip vnp
1
1
Gambar 2.2. Arsitektur Jaringan Saraf Tiruan dengan Backpropagation[7]
Keterangan:
X = Masukan (input)
V = Bobot lapisan tersembunyi
n = Jumlah unit pengolah lapisan tersembunyi
Z = Lapisan tersembunyi (hidden layer)
Y = Keluaran (output)
2.1.3 Fungsi Aktivasi
Sebuah sinyal aktivasi diperlukan oleh suatu neuron untuk menyalakan atau
memadamkan penjalaran sinyal dari neuron tersebut. Sinyal aktivasi dalam jaringan
saraf tiruan ditentukan oleh suatu fungsi aktivasi.
Fungsi aktivasi merupakan fungsi pengolah jumlahan data masukan menjadi
data keluaran. Karakteristik pada fungsi aktivasi dari backpropagation adalah
continue, dapat diturunkan, dan tidak menurun secara monoton. Fungsi aktivasi untuk
algoritma backpropagation adalah sebagai berikut [6]:
1. Linier atau Purelin
Fungsi linier akan membawa masukkan ke keluaran yang sebanding. Fungsi ini
didefinisikan:
Ilustrasi fungsi liner digambarkan pada gambar 2.3 berikut ini:
Gambar 2.3. Fungsi Aktivasi Linier
-1 1
0 x
f(x) x
2. Sigmoid Biner atau Logsig
Fungsi ini memiliki sifat nonlinier sehingga sangat baik diterapkan dalam
penyelesaian masalah yang kompleks. Keluaran dari fungsi sigmoid biner berupa
bilangan biner (0 atau 1) atau nilai yang berada di antara 0 sampai 1. Sigmoid biner
memiliki range dari [0,1] dan didefinisikan :
)
dan fungsi turunannya adalah :
f'(x)= f1(x)[1− f1(x)]
Ilustrasi fungsi sigmoid biner digambarkan pada gambar 2.4 berikut ini:
Gambar 2.4. SigmoidBiner[11]
3. Sigmoid Bipolar atau Tansig
Sigmoid Bipolar memiliki range dari (-1,1) dan didefinisikan :
1
dan turunan fungsi adalah :
Ilustrasi fungsi sigmoid bipolar digambarkan pada gambar 2.5 berikut ini:
Gambar 2.5. Sigmoid Bipolar[12]
2.1.4 Algoritma pembelajaran metode backpropagation
Proses pelatihan backpropagation meliputi tiga tahap, yaitu tahap umpan maju
(feedforward), tahap umpan mundur, dan tahap update bobot dan bias[7]. Algoritma
backpropagation diuraikan sebagai berikut:
Fase I: Propagasi Maju
Selama propagasi maju, sinyal masukan (= xi ) dipropagasikan ke layer tersembunyi
menggunakan fungsi aktivasi yang ditentukan. Keluaran dari setiap unit layer
tersembunyi (= zj ) tersebut selanjutnya dipropagasikan maju lagi ke layer
tersembunyi di atasnya menggunakan fungsi aktivasi yang ditentukan. Demikian
seterusnya hingga menghasilkan keluaran jaringan (=yk ). Berikutnya, keluaran
jaringan (= yk ) dibandingkan dengan target yang harus dicapai (= tk ). Selisih dari tk
terhadap yk yaitu ( tk – yk ) adalah kesalahan yang terjadi. Jika kesalahan ini lebih
kecil dari batas toleransi yang ditentukan, maka iterasi dihentikan. Akan tetapi apabila
kesalahan masih lebih besar dari batas toleransinya, maka bobot setiap garis dalam
jaringan akan dimodifikasi untuk mengurangi kesalahan yang terjadi.
-1
x f(x)
Fase II: Propagasi Mundur
Berdasarkan kesalahan tk – yk , dihitung faktor δk (k = 1,2,..., m ) yang dipakai untuk
mendistribusikan kesalahan di unit yk ke semua unit tersembunyi yang terhubung
langsung dengan yk . δk juga dipakai untuk mengubah bobot garis yang berhubungan
langsung dengan unit keluaran.
Dengan cara yang sama, dihitung faktor δj ( j = 1,2,…, p ) di setiap unit di layer
tersembunyi sebagai dasar perubahan bobot semua garis yang berasal dari unit
tersembunyi di layerdi bawahnya. Demikian seterusnya hingga semua faktor δ di unit
tersembunyi yang berhubungan langsung dengan unit masukan dihitung.
Fase III: Perubahan Bobot
Setelah semua faktor δ dihitung, bobot semua garis dimodifikasi bersamaan.
Perubahan bobot suatu garis didasarkan atas faktor δ neuron di layer atasnya. Sebagai
contoh, perubahan bobot garis yang menuju ke layer keluaran didasarkan atas δk yang
ada di unit keluaran. Ketiga fase terebut diulang-ulang terus hingga kondisi
penghentian dipenuhi. Umumnya kondisi penghentian yang sering dipakai adalah
jumlah iterasi atau kesalahan. Iterasi akan dihentikan jika jumlah iterasi yang
dilakukan sudah melebihi jumlah maksimum iterasi yang ditetapkan, atau jika
kesalahan yang terjadi sudah lebih kecil dari batas toleransi yang diijinkan. Algoritma
pelatihan untuk jaringan dengan satu layer tersembunyi (dengan fungsi aktivasi
sigmoid biner) adalah sebagai berikut [4]:
Langkah 0 : Inisialisasi semua bobot dengan bilangan acak kecil.
Langkah 1 : Jika kondisi penghentian belum terpenuhi, lakukan langkah 2 – 9.
Langkah 2 : Untuk setiap pasang data pelatihan, lakukan langkah 3 – 8.
Fase I : Propagasi maju
Langkah 3 : Tiap unit masukan menerima sinyal dan meneruskannya ke unit
tersembunyi di atasnya.
Langkah 4 : Hitung semua keluaran di unit tersembunyi j
Langkah 5 : Hitung semua keluaran jaringan di unit k
Fase II : Propagasi mundur
Langkah 6 : Hitung faktor δ unit keluaran berdasarkan kesalahan di setiap unit keluaran yk ( k = 1,2,…,m ). δk merupakan unit kesalahan yang akan dipakai dalam
perubahan bobot layer dibawahnya (langkah 7). Hitung suku perubahan bobot wkj
(yang akan dipakai nanti untuk merubah bobot wkj) dengan laju perceptron α
Δwkj =αδk zj ; k = 1,2,…,m ; j = 0,1,…, p
Langkah 7 : Hitung faktor δ unit tersembunyi berdasarkan kesalahan di setiap unit
tersembunyi zj ( j = 1,2,…, p ).
Faktor δ unit tersembunyi :
δj= δ_netj f ’(z_netj) = δ_netj zj ( 1– zj )
Hitung suku perubahan bobot Vji (yang akan dipakai nanti untuk merubah bobot Vji).
Δvji= α δj xi ; j = 1,2,…,p ; I = 0,1,…,n
Fase III : Perubahan bobot
Langkah 8 : Hitung semua perubahan bobot.
Perubahan bobot garis yang menuju ke unit keluaran :
Wkj (baru) = Wkj (lama) + ΔWkj ( k = 1,2,…,m ; j = 0,1,…,p )
Vji (baru) = Vji (lama) + Δvji ( j = 1,2…,p ; I = 0,1,…,n )
Setelah selesai dilakukan, jaringan dapat dipakai untuk pengenalan pola. Dalam hal
ini, hanya propagasi maju (langkah 4 dan 5) saja yang dipakai untuk menentukan
keluaran jaringan. Apabila fungsi aktivasi yang dipakai bukan sigmoid biner, maka
langkah 4 dan 5 harus disesuaikan. Demikian juga turunannya pada langkah 6 dan 7.
2.1.5 Preprocessing dan postprocessing
1. Min dan Max
Sebelum dilakukan pelatihan, seringkali dilakukan penskalaan pada input dan target
sedemikian hingga data input dan target tersebut masuk dalam satu range tertentu[5].
Fungsi premnmx digunakan untuk menskala input dan output sedemikian hingga
data-datanya akan terletak pada range [1,1].
Systax:
[pn,minp,maxp,tn,mint,maxt] = premnmx(p,t), atau
[pn,minp,maxp] = premnmx(p), atau
[tn,mint,maxt] = premnmx(t)
Dengan p adalah hasil input, dan t adalah matriks output. Fungsi ini akan
menghasilkan:
pn : matriks input yang ternormalisasi (terletak pada range [-1,1])
tn : matriks target yang ternormalisasi (terletak pada range [-1,1])
minp : nilai minimum pada matriks input asli(p).
maxp : nilai maksimum pada matriks input asli(p).
mint : nilai minimum pada matriks target asli(p).
maxt : nilai maksimum pada matriks target asli(p).
Apabila matriks yang sudah ternormalisasi ini ingin dikembalikan kebentuk aslinya,
maka dapat digunakan fungsi postmnmx.
Systax:
[p] = postmnmx (pn,minp,maxp), atau
[t] = postmnmx (tn,mint,maxt)
Dengan p dan t adalah matriks yang telah didenormalisasi.
Apabila pada jaringan saraf tiruan yang telah dilatih menggunakan premnmx untuk
preprocessing, maka apabila ada data input baru yang akan disimulasikan, data baru
tersebut juga harus disesuaikan dengan nilai minimum dan maksimum dari jaringan.
Untuk keperluan ini, dapat digunakan fungsi tramnmx.
2. Mean dan standar deviasi
Selain dengan meletakkan data input dan target pada range tertentu, proses
normalisasi juga dapat dilakukan dengan bantuan mean dan standar deviasi[5]. Fungsi
prestd akan membawa data ke bentuk normal dengan mean=0 dan deviasi standar=1.
Syntax:
[pn,meanp,stdp,tn,meant,stdt] = prestd(p,t), atau
[pn,meanp,stdp] = prestd(p), atau
[tn,meant,stdt] = prestd(t)
Dengan p adalah hasil input, dan t adalah matriks output. Fungsi ini akan
menghasilkan:
pn : matriks input yang ternormalisasi (terletak pada range [-1,1])
tn : matriks target yang ternormalisasi (terletak pada range [-1,1])
meanp : mean pada matriks input asli(p).
stdp : standar deviasi pada matriks input asli(p)
meant : mean pada matriks input target(t).
stdt : standar deviasi pada matriks target asli(p)
Apabila matriks yang sudah ternormalisasi ini ingin dikembalikan kebentuk aslinya,
maka dapat digunakan fungsi poststd.
Systax:
[p,t] = poststd(pn,meanp,stdp,tn,meant,stdt), atau
[t] = poststd (tn,meant,stdt)
Dengan p dan t adalah matriks yang telah didenormalisasi.
Apabila pada jaringan saraf tiruan yang telah dilatih menggunakan trastd untuk
preprocessing, maka apabila ada data input baru yang akan disimulasikan, data baru
tersebut juga harus disesuaikan dengan nilai mean dan standar deviasi dari jaringan.
Untuk keperluan ini, dapat digunakan fungsi trastd.
2.2 Aplikasi Backpropagation Dalam Prediksi
Prediksi adalah perkiraan tentang sesuatu yang akan terjadi pada waktu yang akan
datang yang didasarkan pada data waktu sekarang dan waktu lampau (historical
data)[4].
Prediksi merupakan suatu proses untuk memperkirakan kejadian ataupun
perubahan di masa yang akan datang[11]. Dalam suatu proses kegiatan, proses
prediksi ini merupakan awal dari rangkaian kegiatan, dan sebagai titik tolak kegiatan
berikutnya. Permodelan time series sering sekali dikaitkan dengan proses prediksi
(forecasting) suatu nilai karakteristik tertentu pada periode kedepan, melakukan
pengendalian suatu proses ataupun untuk mengenali pola perilaku sistem[15].
Dengan mendeteksi pola dan kecendrungan data time series, kemudian
memformulasikannya dalam suatu model, maka dapat digunakan untuk memprediksi
data yang akan datang. Model dengan akurasi yang tinggi akan menyebabkan nilai
prediksi cukup valid untuk digunakan sebagai pendukung dalam proses pengambilan
keputusan.
Salah satu metode prediksi yang berkembang saat ini adalah menggunakan
jaringan saraf tiruan (artificial neural network), dimana jaringan saraf tiruan telah
menjadi penelitian yang menarik dan banyak digunakan untuk menyelesaikan masalah
pada beberapa bidang kehidupan. Salah satu diantaranya adalah untuk analisis data
Salah satu jaringan pada JST yang dapat diaplikasikan dengan baik dalam
bidang prediksi (forecasting) adalah backpropagation. Prediksi yang sering kita
dengar adalah prediksi jumlah penjualan, nilai tukar, valuta asing, prediksi besarnya
aliran air sungai, dll[4].
Secara umum, masalah prediksi dapat dinyatakan sebagai berikut: Diketahui
sejumlah data runtun waktu (time series) x1, x2, …, xn. Masalahnya adalah
memperkirakan berapa harga xn+1 berdasarkan x1, x2, …, xn.
Dengan backpropagation, record data dipakai sebagai data pelatihan untuk
mencari bobot yang optimal. Untuk itu kita perlu menetapkan besarnya periode
dimana data berfluktuasi secara teratur. Besarnya periode ini kita tentukan secara
intuitif. Misalnya: perminggu, perbulan, perempat bulan atau pertahun.
Bagian tersulit dari memprediksi sesuatu menggunakan jaringan saraf tiruan
backpopagation adalah menentukan jumlah layer (dan unitnya). Tidak ada teori yang
dengan pasti yang dapat dipakai. Tapi secara praktis dicoba jaringan yang kecil
terlebih dahulu (misalnya terdiri dari satu layer tersembunyi dengan beberapa unit
saja). Jika gagal (kesalahan tidak turun dalam epoch yang besar), maka jaringan
diperbesar dengan menambahkan unit tersembunyi atau bahkan menambah layer
tersembunyi.
2.3 Prediksi Harga Minyak Mentah Dunia
Energi adalah mesin pertumbuhan ekonomi yang utama dan minyak bumi adalah
primadonanya karena kemudahan dan fleksibilitas penggunaannya paling tinggi
dibandingkan energi lainnya. Minyak bumi telah berperan besar dalam memajukan
negara-negara industri yang mengkonsumsinya dalam jumlah besar dan harga murah
sedangkan dewasa ini negara-negara ekonomi baru yang sedang tumbuh juga sangat
memerlukan namun pada situasi pasokan yang sudah sedikit dan pada harga yang jauh
Kecukupan pasokan dan harga minyak yang stabil sangat diperlukan dalam
mendorong pertumbuhan ekonomi maupun kegiatan usaha. Karena itu harga yang
dapat diprediksi dengan baik akan sangat bermanfaat bagi banyak pihak, baik
pemerintah, badan usaha maupun investor agar semua kegiatan dapat direalisasikan
sesuai rencana[14].
Sebaliknya, harga minyak yang naik-turun saat ini, sering membuat cemas
para pelaku ekonomi bahkan dapat mengancam stabilitas pertumbuhan perekonomian
jika tidak di-manage dengan baik. Pada kenyataannya pergerakan harga minyak dalam
runut waktu tertentu dapat digolongkan data time series yang umumnya dapat
dipahami dengan melihat pola kejadian di masa lalu dan saat ini.
Pada pengamatan data time series harga minyak, terdapat beberapa reverensi
yang dapat diambil, yaitu harga dari pasar minyak mentah dunia. Dari beberapa pasar
minyak mentah yang terbesar antara lain: WTI (West Texas Intermediate), NYMEX
(New York Mercantile Exchange), Brent North Sea, Tapis, Minas[10].
2.4 Tinjauan Penelitian yang Relevan
Berikut ini penelitian tentang jaringan saraf tiruan backpropagation, khususnya
penggunaan dalam hal prediksi:
1. Penelitian oleh Dini Otaviani ini membahas tentang penggunaan jaringan saraf
tiruan backpropagation untuk memprediksi kurs mata valuta asing. Hasil dari
penelitian ini, jaringan saraf tiruan backpropagation dapat memprediksi nilai
kurs valuta asing dengan faktor penentu keberhasilan pelatihan antara lain:
jumlah layer, jumlah neuron dan parameter pelatihan. Pelatihan perbulan
menghasilkan pencapaian yang baik, namun pada pelatihan periode lain seperti
harian atau mingguan kurang baik karena data pelatihan yang kurang banyak
2. Penelitian oleh Edy Suprianto ini mengimplementasikan algoritma
Backpropagation untuk memprediksi harga saham. Dalam penelitian ini
dilakukan beberapa prediksi dalam bentuk harian, dengan empat variabel input
yaitu nilai tertinggi, terendah, penutupan dan volume. Dari hasil penelitian
algoritma backpropagation bisa digunakan karena sifatnya yang adaptif karena
jaringan berusaha mencapai kestabilan kembali untuk mencapai output yang
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Permasalahan
.
Ketidakstablian harga minyak menjadi masalah yang cukup rumit dan belum
terselesaikan sepenuhnya. Pihak yang terkait dengan pengelolaan harga minyak dalam
negeri sebaiknya memiliki sistem prediksi harga minyak yang dapat memperkirakan
harga minyak sebagai antisipasi kenaikan atau penurunan harga.
Penyebab dan dampak dari permasalahan tersebut diperlihatkan pada diagram
ishikawa Gambar3.1.
Sulit Memprediksi Harga Minyak Staf
Metode Kurang tepat melakukan
perkiraan harga minyak
Prediksi harga masih dilakukan secara intuitif
Material
Belum ada aplikasi untuk memperkirakan harga minyak
Prosedur Tidak bisa diukur tingkat
validitasnya
Gambar 3.1 Diagram Ishikawa Analisis Permasalahan
Proses prediksi dapat dilakukan dengan mengamati data periode harga minyak
dimasa lalu. Misalnya data harga minyak diketahui data harga minyak selama satu
tahun yaitu tahun 2010. Data ini bisa dibagi menjadi data bulan Januari-November
2010 sebagai input dan data bulan desember 2010 sebagai target dengan periode input
dan target dimana data berfluktuasi dapat diamati dalam periode satu bulan. Maka,
sebelum menentukan jumlah input, target dan periode dimana data berfluktuasi
yang akan dibangun terutama untuk menentukan arsitektur jaringan dan periode
pelatihan maupun prediksinya.
Oleh karena itu diperlukan analisis terhadap data terlebih dahulu. Berikut ini adalah
grafik harga minyak dari tahun 2010 hingga 2013:
Gambar 3.2 Grafik harga minyak tahun 2010 dan awal 2013
Dari grafik data diatas yang terjadi perulangan pola antara lain: tahun 2010, tahun
2011 pada grafik menaik dan tahun 2012 hingga tahun 2013 yang cendrung stabil.
Data dapat dikelompokkan menjadi:
Tabel 3.1 Kelompok Data yang Memiliki Pola yang Berulang
No Tahun Bulan
1. 2010 1,2,3,4,5,6,7,8,9
2. 2010-2011 11,12,1,2,3,4,5,6,7
3. 2012-2013 4,5,6,7,8,9,10,11,12,1
4. 2012-2013 6,7,8,9,10,11,12,1,2
5. 2012-2013 7,8,9,10,11,12,1,2,3
Tabel 3.2 Grafik Data yang Memiliki Pola yang Berulang
Gambar Grafik Kelompok Data yang Memiliki Pola yang Sama
Data harga minyak yang sepola, tampak dari gambar diatas dapat kemudian dibagi
menjadi data untuk pelatihan dan data untuk prediksi. Data pelatihan juga dibagi
3.2 Analisis Kebutuhan Sistem
Analisis Kebutuhan Sistem meliputi analisis kebutuhan fungsional sistem dan analisis
kebutuhan non-fungsional sistem.
3.2.1 Kebutuhan fungsional sistem
Kebutuhan fungsional yang harus dimiliki oleh sistem prediksi harga minyak mentah
dunia adalah:
1. Sistem dapat membaca masukan berupa data harga minyak mentah dunia selama
tiga tahun terakhir.
2. Sistem dapat menghasilkan jaringan saraf tiruan dengan kinerja maksimal.
3. Sistem dapat melakukan memprediksi harga minyak mentah dalam jangka waktu
beberapa bulan mendatang
4. Sistem dapat menampilkan hasil prediksi yang akurat dan menampilkan error
yang kurang dari batas toleransi terhadap data sebenarnya.
3.2.2 Kebutuhan non-fungsional sistem
Untuk mendukung kinerja sistem, sistem sebaiknya dapat berfungsi sebagai berikut:
1. Waktu respon sistem cepat, sehingga dapat mengefektifkan waktu pengguna sistem.
2. Tampilan antarmuka sistem dapat dengan mudah dimengerti oleh pengguna sistem.
3. Data yang terdapat pada sistem berupa data yang relevan, sehingga menghasilkan
pengenalan yang tepat.
4. Sistem yang dibuat dapat dikembangkan dengan mudah, sehingga sistem tidak
cepat usang.
3.3 Pemodelan
Pada penelitian ini digunakan UML sebagai bahasa pemodelan untuk mendesain dan
merancang sistem prediksi harga minyak mentah dunia. Model UML yang digunakan
3.3.1 Use case diagram
Untuk mengetahui aktor dan use case yang akan digunakan, maka dilakukan
identifikasi aktor dan identifikasi use case. Setelah mendapatkan aktor dan use case,
maka use case diagram dapat digambarkan. Pengidentifikasian aktor dan use case
pada sistem ini dilakukan dengan menjawab pertanyaan-pertanyaan berikut:
1. Siapa yang menggunakan sistem?
Jawaban: Pengguna
2. Siapa yang diperlukan untuk melaksanakan fungsi pada sistem?
Jawaban: Pengguna dan programmer
3. Apa saja yang dapat dilakukan pengguna pada sistem?
Jawaban: Melakukan pelatihan JST, melakukan prediksi harga minyak mentah dunia
dan melihat hasil prediksi.
Use case diagram secara grafis yang menggambarkan interaksi antara sistem dan
pengguna. Dengan kata lain, secara grafis mendeskripsikan siapa yang akan
menggunakan sistem dan dalam cara apa pengguna mengharapkan interaksi dengan
sistem itu. Use case diagram berdasarkan aktor dan use case ditampilkan pada
Sistem Prediksi Harga Minyak
Gambar 3.3 Use Case Diagram Sistem Prediksi Harga Minyak Mentah Dunia
3.3.1.1 Use case cek data harga
Tabel 3.3 merupakan tabel dokumentasi naratif dari use case cek data harga minyak
mentah dunia.
Tabel 3.3 Dokumentasi Naratif Use Case Cek Data Harga
Nama Use case Cek Data
Aktor Pengguna
Deskripsi Use case ini mendeskripsikan proses men-cek harga minyak mentah dunia
Prakondisi Sudah masuk dalam tampilan Cek Data
Bidang khas
Kegiatan pengguna Respon sistem
1. Klik popup menu untuk memilih bulan dan tahun yang akan dilihat datanya
1. Menampilkan data 20 harga minyak perhari dari bulan dan tahun yang dipilih juga menampilkan data dalam bentuk grafik
Bidang Alternatif
1. Tekan tombol ke Pelatihan
2. Tekan tombol Menu Utama
1. Menuju antar muka pelatihan
Post-kondisi Sistem menampilkan harga minyak dalam bentuk angka dan grafik berdasarkan bulan dan tahun yang dipilih
Activity diagram untuk use case cek data harga minyak diperlihatkan pada
Gambar 3.4.
Pilih Bulan dan Tahun
Tampilan Harga Minyak dalam angka
Tampilan Harga Minyak dalam grafik
Gambar 3.4. Activity Diagram Data Cek Harga
3.3.1.2 Use case pelatihan JST
Tabel 3.4 menunjukkan dokumentasi naratif dari use case pelatihan JST.
Tabel 3.4 Dokumentasi Naratif Use Case Latih JST
Nama Use case Pelatihan JST Aktor Programmer
Deskripsi Use case ini mendeskripsikan proses pelatihan JST
Prakondisi Sudah masuk dalam tampilan antarmuka Pelatihan dan data harga minyak mentah sudah ada sebagai input-an
Bidang khas
Kegiatan pengguna Respon sistem 1. Isi nilai Learning
rate
5. Klik tombol Latih 6. Klik tombol
1. Input nilai learning rate ke dalam sistem
2. Input nilai momentum ke dalam sistem
3. Input nilai maksimum
error ke dalam sistem 4. Input nilai learningrate ke
dalam sistem
Simpan 7. Klik tombol
Tampil
6. Menyimpan bobot ke dalam excel
7. Menampilkan data
pelatihan dalam figure lain
Bidang Alternatif
1. Tekan tombol ke Prediksi
2. Tekan tombol Menu Utama
1. Menuju antar muka prediksi 2. Kembali ke antarmuka Menu
Utama
Post-kondisi Sistem menampilkan grafik hasil pelatihan
Activity diagram untuk use case pelatihan harga minyak diperlihatkan pada Gambar
Masukkan learning rate
Masukkan momentum
Masukkan Max. Epoch
Masukkan Max. Error
Klik tombol Latih
Pelatihan kurang dari max error yg ditetapkan?
Klik tombol tampil
Pelatihan Menampilkan grafik
Klik tombol simpan Pilih data pelatihan
Ya tidak
3.3.1.3 Use case prediksi JST
Berikut ini merupakan tabel dokumentasi naratif dari use case prediksi JST.
Tabel 3.5 Dokumentasi Naratif Use Case Prediksi JST
Nama Use case Prediksi Harga Minyak
Aktor Pengguna
Deskripsi Use case ini mendeskripsikan proses memprediksi harga minyak mentah dunia
Prakondisi Sudah masuk dalam tampilan antarmuka Prediksi
Bidang khas
Kegiatan pengguna Respon sistem 1. Pilih dari popupmenu
bulan dan tahun yang akan diprediksi
1. Menampilkan bulan dan tahun yang dipilih untuk diprediksi
2. Klik tombol prediksi 2. Menampilkan data hasil prediksi dalam bentuk grafik dan table serta jumlah error (mse)
Bidang Alternatif
1. Tekan tombol ke Keluar
2. Tekan tombol Menu Utama
1. Menutup Aplikasi 2. Kembali ke
antarmuka Menu Utama
Post-kondisi Sistem menampilkan hasil prediksi yang akan dibandingkan dengan data aktual
Activity diagram untuk use case prediksi harga minyak diperlihatkan pada
Pilih Data Minyak
Klik Prediksi
Tampilkan Hasil Akhir Prediksi JST melakukan prediksi
sesuai kah dengan data aktual?
Ya
Tampilkan hasil prediksi
tidak
Gambar 3.6. Activity Diagram Prediksi Harga Minyak
3.3.2 Analisis proses sistem
Berikut dijelaskan proses yang terjadi pada sistem dengan menggunakan sequence
diagram. Sequence diagram adalah diagram yang memodelkan logika sebuah use case
dengan cara menggambarkan interaksi pesan diantara objek-objek dalam rangkaian
waktu.
3.3.2.1 Proses pelatihan jaringan saraf tiruan
Sistem dimulai dengan pengecekan data untuk mengetahui jangka waktu data-data
yang akan dilatih. Data dimasukkan ke dalam sistem menggunakan sekumpulan daftar
harga minyak, diambil dari data yang tersimpan dalam excel. Proses input data
dilakukan dengan memilih data harga minyak yang akan dilatih menggunakan
Tahapan selanjutnya pengguna memasukkan parameter pelatihan seperti laju
pembelajaran, nilai error maksimal dan besar momentum. Lalu dilakukan pelatihan
terhadap jaringan saraf tiruan dengan parameter yang ditentukan oleh pengguna dan
masukan berupa matriks normalisasi. Hasil pembelajaran berupa bobot dan bias yang
akan disimpan dan digunakan pada proses prediksi.
Sebelum dilakukan pelatihan dengan backpropagation, terlebih dahulu
dilakukan normalisasi terhadap input pelatihan. Proses normalisasi dilakukan dengan
bantuan mean dan standar deviasi. Fungsi prestd akan membawa data ke bentuk
normal dengan mean = 0 dan standar deviasi = 1.
Terakhir dilakukan pelatihan terhadap jaringan saraf tiruan dengan parameter
yang ditentukan oleh pengguna dan masukan yang telah diubah bentuknya menjadi
matriks normalisasi. Hasil pembelajaran berupa bobot dan bias setelah pelatihan yang
akan disimpan dan digunakan pada proses prediksi. Proses tampil hasil menampilkan
selisih dalam bentuk tabel dan simpan hasil untuk menyimpan data hasil pelatihan.
Berikut ini sequence diagram untuk proses pelatihan diperlihatkan pada Gambar 3.7.
Latih Tampil Hasil Simpan Hasil
Proses latih
Simpan bobot
output,target
input hasil pelatihan
Input bobot awal Sistem Pelatihan
Input parameter
input(P,T), normaslisasi Input Parameter
baca parameter
RMSE
selisih output-target
Berikut adalah pseudocode dari proses pelatihan jaringan saraf tiruan pada
sistem prediksi harga minyak.
Proses Pelatihan Jaringan Saraf Tiruan
INPUT PARAMETER
function parameter_Callback(hObject, eventdata, handles) nameParameter=str2num(get(nameProperties,’String’)); handles.nameParameter=nameParameter;
guidata(hObject,handles);
xlswrite(‘Name_fileExcel’,’nameParameter’,’sheet’,’xlrange’); INPUT DATA
function latih_Callback(hObject, eventdata, handles) Input_dataHarga;
net=newff(input, Target,[S1 S2...S(N-l)],{TF1 TF2...TF(N-l)}, BTF)
[net,tr] ← train (net,input, target); Bobot=net.IW{1,1} <-start
input to xl <- [bobot,bias] an=sim(net,pn);
a=poststd(an.meant,stdt); <-normalisasi postprocessing handles.a=a;
[y,Pf,Af,e,Perf]=sim(net,P,[],[],T);
3.3.2.2 Proses prediksi jaringan saraf tiruan
Pada proses prediksi digunakan masukan berupa data harga minyak pada rentang
waktu tertentu. Sama seperti proses pelatihan, input kemudian dinormalisasi kedalam
bentuk matriks antara [-1,1]. Normalisasi pada tahap prediksi ini juga menyertakan
Kemudian dilakukan pengambilan data hasil dari pelatihan berupa bobot yang
sudah dilatih. Bobot tersebut sebelumnya disimpan di excel. Kemudian ketika
dilakukan proses prediksi dengan menggunakan xlsread, bobot dibaca oleh sistem.
Setelah dilakukan prediksi yaitu disebut proses feedforward karena tidak dilakukan
pelatihan mundur untuk mengubah bobot. Hasil prediksi berupa informasi mengenai
prediksi harga minyak pada periode mendatang yang telah diketahui sehingga dapat
diukur tingkat validasinya. Sequence diagram proses prediksi jaringan saraf tiruan
dipaparkan pada Gambar 3.8.
Kontrol Prediksi Input Harga Normalisasi Identifikasi bobot Feedforward
Proses Normalisasi Proses input
input bobot akhir
Input hasil pelatihan
Proses prediksi
Hasil prediksi Input harga
Gambar 3.8 Sequence Diagram Proses Prediksi JST
Berikut adalah pseudocode dari proses prediksi jaringan saraf tiruan pada sistem
prediksi harga minyak.
Proses Prediksi JST INPUT DATA
function prediksi_Callback(hObject, eventdata, handles) Input_dataHarga;
target=get(handles.popupmenu1,’Value’); switch target
case number input <-[Q,TQ] end
Qn=trastd(Q,meanp,stdp);
net=newff(input, Target,[S1 S2...S(N-l)],{TF1 TF2...TF(N-l)}, BTF) [net,tr] ← train (net,input, Target);
net.IW{1,1}=xlsread(‘Name_fileExcel’,’sheet’,’xlrange’); <-start net.b{1}= xlsread(‘Name_fileExcel’,’sheet’,’xlrange’); <-start bn=sim(net,Qn);
b=poststd(bn,meant,stdt);
UJI JST BACKPROPAGATION
[y,Pf,Af,e,Perf]=sim(net,P,[],[],T);
3.4 Perancangan Antarmuka
Perancangan antarmuka menguraikan bagaimana komunikasi antara sistem dengan
pengguna. Tujuan utama dari perancangan antarmuka pengguna adalah untuk
menciptakan suatu komunikasi yang efektif antara manusia dan komputer. Antarmuka
yang menarik menjadi nilai tambah bagi pengguna maupun perancang sistem tersebut.
Pada tahap ini akan dilakukan perancangan antarmuka sistem yang akan digunakan
pada sistem nantinya.
3.4.1. Antarmuka menu utama
Antarmuka menu utama sistem merupakan tampilan utama ketika sistem dijalankan.
Rancangan antarmuka menu utama pada sistem prediksi harga minyak dapat dilihat
pada Gambar 3.9.
Keterangan:
1. TombolCek Data
Berfungsi menghubungkan antarmuka menu utama dengan antarmuka cek data.
2. TombolPelatihan
Berfungsi menghubungkan antarmuka menu utama dengan antarmuka pelatihan.
3. TombolPrediksi
Berfungsi menghubungkan antarmuka menu utama dengan antarmuka prediksi.
4. Tombol Keluar
Berfungsi menghubungkan antarmuka menu utama dengan antarmuka konfirmasi
keluar.
3.4.2. Antarmuka cek data
Terdapat dua bagian utama pada antarmuka cek data, yaitu bagian menampilkan data
dalam bentuk angka dan grafik. Rancangan antarmuka cek data diperlihatkan pada
Gambar 3.10.
Keterangan:
1. 1. Popup Menu
Berfungsi untuk menampilkan data dalam bentuk angka dan grafik
2. Textfield Harga dalam angka
Tempat memasukkan nilai harga minyak selama satu bulan
3. Axes
Menampilkan data harga minyak selama satu bulan.
4. Tombol ke Pelatihan
Berfungsi menghubungkan antarmuka cek data dengan antarmuka pelatihan
5. Tombol Menu Utama
Berfungsi menghubungkan antarmuka cek data denganantarmuka menu utama
3.4.3. Antarmuka pelatihan
Terdapat dua bagian utama pada antarmuka pelatihan, yaitu bagian pelatihan JST
backpropagation dan bagian penyimpanan bobot ke dalam excel. Rancangan
antarmuka pelatihan diperlihatkan pada Gambar 3.11.
Keterangan:
1. Popup Menu
Berfungsi untuk memilih data yang akan dilatih.
2. Textfield Laju Pemahaman
Tempat memasukkan nilai laju pemahaman
3. Textfield Momentum
Tempat memasukkan nilai momentum
4. Textfield Max. Epoch
Tempat memasukkan nilai maksimal epoch dalam pelatihan
5. Textfield Max. Error
Tempat memasukkan nilai maksimal toleransi erroroutput terhadap target
6. TombolLatih
Berfungsi untuk melatih data sesuai dengan parameter-parameter yang telah
ditentukan sebelumnya.
7. Textfield MSE
Tempat menampilkan error yang dihasilkan dari proses pelatihan
8. Axes
Menampilkan perbandingan target dan output yang dihasilkan dari pelatihan dalam
bentuk grafik
9. TombolTampil
Berfungsi untuk menampilkan perbandingan target dan output yang dihasikan
dalam bentuk tabel
10. TombolSimpan
Berfungsi untuk menyimpan bobot-bobot dari hasil pelatihan ke dalam excel.
11. Tombol ke Prediksi
Berfungsi menghubungkan antarmuka pelatihan dengan antarmuka prediksi
12. Tombol Menu Utama
3.4.4. Antarmuka prediksi
Pada antarmuka pengujian terdapat dua bagian yaitu bagian yang akan diprediksi dan
hasil prediksi. Rancangan antarmuka pediksi jaringan saraf tiruan ditunjukkan pada
Gambar 3.12.
Gambar 3.12 Rancangan Antarmuka Prediksi
Keterangan:
1. Popup Menu
Berfungsi memilih data yang akan diprediksi
2. Tombol Prediksi
Berfungsi memulai proses prediksi dan memunculkan data dalam bentuk tabel.
3. Axes 1
Tempat menampilkan perbandingan data aktual dengan hasil prediksi dalam
bentuk grafik
4. Tombol Menu Utama
Berfungsi menghubungkan antarmuka pengujian dengan antarmuka Menuu
Utama.
5. Tombol Keluar
3.4.5. Antarmuka konfirmasi keluar
Antarmuka konfirmasi keluar adalah antarmuka yang muncul setiap pengguna
mengklik tombol keluar pada antarmuka menu utama. Rancangan antarmuka ini
diperlihatkan pada Gambar 3.13.
Gambar 3.13Rancangan AntarmukaKonfirmasi Keluar
Keterangan:
1. TombolYa
Berfungsi menjawab 'Ya' pada konfirmasi keluar, maka pengguna keluar dari sistem.
2. TombolTidak
Berfungsi menjawab 'Tidak' pada konfirmasi keluar, maka antarmuka konfirmasi
BAB 4
IMPLEMENTASI DAN PENGUJIAN SISTEM
4.1 Implementasi Sistem
Implementasi sistem prediksi harga minyak metah dunia menggunakan jaringan saraf
tiruan backpropagation ini menggunakan perangkat lunak Matlab R2009. Perangkat
lunak pemrograman ini dipilih karena menyediakan banyak fasilitas dan fungsi-fungsi
yang membantu dalam perhitungan matematik dan pembuatan grafik juga tools untuk
membangun arisektur jaringan saraf tiruan. Hal ini sangat mendukung dalam
penulisan skripsi ini, dimana banyak pemrosesan yang menggunakan perhitungan
secara matematis, menampilkan grafik dan memudahkan dalam pemrosesan jaringan
saraf tiruan. Selain, Matlab R2009 sistem ini juga menggunakan Microsoft Office
Excel 2007 sebagai perangkat lunak yang menyimpan data pelatihan.
Penerapan sistem dilakukan dengan menggunakan komputer dengan sistem
operasi Windows Seven Ultimate dan perangkat keras yang digunakan dalam
mengimplementasikan program simulasi dari jaringan saraf tiruan ini adalah Intel
atom N570, memori RAM 1 GB , DDR3 1 GB, harddisk 320 GB, dan Monitor LCD
10.1” dengan resolusi layar (1024 x 600).
4.1.1 Tampilan antarmuka sistem
Sistem prediksi harga minyak mentah dunia diimplementasikan dalam beberapa
tampilan antarmuka yang terdiri dari antarmuka menu utama, antarmuka cek data,
antarmuka pelatihan, antarmuka prediksi, antarmuka tampilan hasil pelatihan,
4.1.1.1 Antarmuka menu utama
Antarmuka menu utama merupakan antarmuka yang pertama kali tampil ketika
aplikasi dimulai. Antarmuka ini terdiri dari nama aplikasi, tombol cek data, tombol
pelatihan, tombol prediksi, dan tombol keluar. Tombol-tombol ini menghubungkan
antarmuka menu utama dengan antarmuka lain.
Tombol cek data menghubungkan antarmuka menu utama dengan antarmuka
cek data. Tombol pelatihan menghubungkan antarmuka menu utama dengan
antarmuka pelatihan. Tombol prediksi menghubungkan antarmuka menu utama
dengan antarmuka prediksi. Tombol keluar, menghubungkan antarmuka menu utama
keluar. Tampilan antarmuka menu utama ditunjukkan pada Gambar 4.1.
Gambar 4.1 Antarmuka Menu Utama
4.1.1.2 Antarmuka cek data
Antarmuka cek data berfungsi untuk menampilkan daftar harga minyak mentah dunia
dari bulan dan tahun yang dipilih. Daftar harga tersebut ditampilkan pada edit text
yang dapat muncul hasilnya setelah pengguna memilih bulan dan tahun pada popup
menu. Begitu juga dengan data berbentuk grafik pada antarmuka cek data yang akan
sama. Pada antarmuka ini juga terdapat tombol menu utama dan ke pelatihan yang
berfungsi menghubungkan ke antarmuka selanjutnya. Selengkapnya tampilan
antarmuka cek data sebelum proses penampilan data pada Gambar 4.2 dan antarmuka
cek data setelah pengambilan data dari Microsoft Office Excel 2007 pada Gambar 4.3.
Gambar 4.2 Antarmuka Cek data