OPTIMASI FUZZY BACKPROPAGATION NEURAL NETWORK DENGAN ALGORITMA GENETIKA UNTUK MEMPREDIKSI NILAI TUKAR RUPIAH TERHADAP DOLLAR AMERIKA TUGAS AKHIR SKRIPSI Diajukan kepada Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Negeri Yogyakarta untuk Memenuhi Sebagian Persyaratan Guna Memperoleh Gelar Sarjana Sains Oleh : Geri Wiliansa 13305141049 PROGRAM STUDI MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS NEGERI YOGYAKARTA 2017 i
OPTIMASI FUZZY BACKPROPAGATION NEURAL NETWORK DENGAN ALGORITMA GENETIKA UNTUK MEMPREDIKSI NILAI TUKAR RUPIAH TERHADAP DOLLAR AMERIKA Oleh: Geri Wiliansa NIM. 13305141049 ABSTRAK Tujuan penelitian ini adalah: (1) menjelaskan proses pemodelan Fuzzy Backpropagation Neural Network (FBPNN) untuk memprediksi nilai tukar (kurs) rupiah (IDR) terhadap dollar Amerika (USD), (2) menjelaskan proses optimasi model FBPNN menggunakan Algoritma Genetika, (3) mengetahui hasil optimasi model FBPNN menggunakan Algoritma Genetika, dan (4) memprediksi kurs IDR/USD dengan model FBPNN yang dioptimasi dengan Algoritma Genetika. Pada penelitian ini variabel input yang digunakan adalah data kurs IDR/USD, inflasi, jumlah uang beredar, dan suku bunga Indonesia. Sedangkan variabel output adalah kurs IDR/USD. Semua data diperoleh dari http://www.bi.go.id pada periode Januari 2006 hingga Juli 2016. Data input dan output digunakan untuk membentuk model FBPNN, pada model FBPNN nilai input dan output berupa derajat keanggotaan himpunan fuzzy. Bobot akhir FBPNN selanjutnya dioptimasi dengan Algoritma Genetika. Bobot dari optimasi digunakan untuk prediksi kurs IDR/USD. Hasil penelitian menunjukkan: (1) proses pemodelan FBPNN yaitu penentuan input dengan melihat autokorelasi yang signifikan pada plot ACF, pembagian data input menjadi 2 dengan komposisi 75% data training dan 25% data testing, fuzzifikasi dengan menggunakan fungsi keanggotaan kurva S pertumbuhan, estimasi model terbaik untuk menentukan bobot-bobot dengan fungsi aktivasi sigmoid biner (logsig) pada lapisan tersembunyi dan lapisan output, defuzifikasi. (2) Prosedur optimasi FBPNN dengan Algoritma Genetika adalah pembentukan populasi awal, menghitung nilai fitness masing-masing individu, individu dengan nilai fitness terbaik disimpan, menyeleksi individu dengan teknik seleksi ranking, pindah silang dengan teknik pindah silang aritmatika, mutasi dengan teknik random mutation, pembentukan populasi baru. (3) Optimasi FBPNN dengan Algoritma Genetika memberikan nilai MAPE yang lebih kecil dibanding tanpa Algoritma Genetika. (4) Prediksi kurs IDR/USD untuk bulan Agustus 2016 hingga Januari 2017 secara berurutan adalah sebesar Rp14.280, Rp14.388, Rp14.431, Rp14.457, Rp14.460, dan Rp14.497 dengan MAPE sebesar 8,04%. Kata kunci: FBPNN, Algoritma Genetika, prediksi ii
SURAT PERNYATAAN Saya yang bertanda tangan di bawah ini: Nama : Geri Wiliansa NIM : 13305141049 Program Studi : Matematika Jurusan : Pendidikan Matematika Fakultas : Matematika dan Ilmu Pengetahuan Alam Judul TAS : Optimasi Fuzzy Backpropagation Neural Network dengan Algoritma Genetika untuk Memprediksi Nilai Tukar Rupiah terhadap Dollar Amerika menyatakan bahwa skripsi ini benar-benar karya saya sendiri. Sepanjang pengetahuan saya tidak terdapat karya atau pendapat yang ditulis atau diterbitkan orang lain kecuali sebagai acuan atau kutipan dengan mengikuti tata cara penulisan karya ilmiah yang telah lazim. Apabila ternyata terbukti bahwa pernyataan ini tidak benar maka sepenuhnya menjadi tanggung jawab saya dan saya bersedia menerima sanksi sesuai peraturan yang berlaku. Yogyakarta, 6 April 2017 Yang Menyatakan Geri Wiliansa NIM. 13305141049 iii
LEMBAR PERSETUJUAN iv
HALAMAN PENGESA HAN v
MOTTO Don t stop when you are tired, stop when you are done vi
PERSEMBAHAN Skripsi ini saya persembahkan kepada: 1. Kedua orangtua saya yaitu Ibu Waliyem dan Bapak Gunawan dan kakak saya Rendi Wiliansa. 2. Teman-teman Matematika E 2013. 3. Teman-teman KESRAVO. 4. Teman-teman HIMATIKA. 5. Teman-teman satu atap: Adhi, Ikhsan, dan Pungky. 6. Semua pihak yang telah mendukung dalam penyelesaian skripsi ini. vii
KATA PENGANTAR Alhamdulillah, Puji syukur penulis panjatkan kehadirat Allah SWT karena berkat Rahmat dan HidayatNya sehingga penulis dapat menyelesaikan tugas akhir skripsi ini. Skripsi yang berjudul Optimasi Fuzzy Backpropagation Neural Network dengan Algoritma Genetika untuk Memprediksi Nilai Tukar Rupiah terhadap Dollar Amerika disusun untuk memenuhi salah satu syarat kelulusan guna meraih gelar Sarjana Sains pada Program Studi Matematika, Fakultas Matematika dan Ilmu Pengetahuan Alam, Universitas Negeri Yogyakarta. Penyelesaian skripsi ini tidak terlepas dari kendala, namun adanya bimbingan, saran, dan dukungan dari berbagai pihak, sehingga kendala tersebut dapat teratasi. Oleh karena itu, penulis mengucapkan terima kasih kepada: 1. Bapak Dr. Hartono, selaku Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Negeri Yogyakarta yang telah memberikan kelancaran pelayanan dalam urusan akademik. 2. Bapak Dr. Ali Mahmudi, selaku Ketua Jurusan Pendidikan Matematika Universitas Negeri Yogyakarta yang telah memberikan kelancaran pelayanan dalam urusan akademik. 3. Bapak Dr. Agus Maman Abadi, selaku Ketua Program Studi Matematika Universitas Negeri Yogyakarta dan Dosen Pembimbing yang telah dengan sabar memberikan arahan, bimbingan, dan motivasi kepada penulis selama menyusun skripsi ini. viii
4. Ibu Rosita Kusumawati, M.Sc, selaku Dosen Pembimbing yang telah banyak meluangkan waktu untuk memberikan bimbingan dan arahan dalam menyusun skripsi. 5. Seluruh Dosen Jurusan Pendidikan Matematika Universitas Negeri Yogyakarta yang telah memberikan ilmu dan nasehat kepada penulis. 6. Seluruh pihak yang telah memberikan dukungan, bantuan dan motivasi kepada penulis. Penulis menyadari adanya kekurangan dalam penulisan tugas akhir skripsi ini. Oleh karena itu, penulis menerima kritik dan saran yang bersifat membangun. Semoga penulisan tugas akhir ini dapat bermanfaat bagi pembaca dan pihak yang terkait. Yogyakarta, 6 April 2017 Penulis Geri Wiliansa ix
DAFTAR ISI HALAMAN JUDUL...i ABSTRAK... ii SURAT PERNYATAAN... iii LEMBAR PERSETUJUAN... iv HALAMAN PENGESA HAN... v MOTTO... vi PERSEMBAHAN... vii KATA PENGANTAR... viii DAFTAR ISI... x DAFTAR TABEL... xii DAFTAR SIMBOL... xiii DAFTAR GAMBAR... xiv DAFTAR LAMPIRAN... xvii BAB I PENDAHULUAN... 1 A. Latar Belakang... 1 B. Rumusan masalah... 5 C. Tujuan penelitian... 6 D. Manfaat... 6 BAB II KAJIAN TEORI... 8 A. Valuta Asing... 8 B. Analisis Time Series... 13 C. Himpunan Fuzzy... 17 x
D. Sistem Fuzzy... 35 E. Neural Network... 36 F. Algoritma Backpropagation... 46 G. Ukuran Akurasi Ketepatan Model Peramalan... 56 H. Algoritma Genetika... 57 BAB III METODE PENELITIAN... 72 A. Metode Penelitian... 72 B. Variabel Penelitian... 72 C. Jenis dan Sumber Data... 73 D. Desain Penelitian... 73 BAB IV PEMBAHASAN... 75 A. Model Fuzzy Backpropagation Neural Network untuk Memprediksi Nilai Tukar Rupiah terhadap Dollar Amerika... 75 B. Optimasi Model Fuzzy Backpropagation Neural Network dengan Algoritma Genetika... 91 C. Peramalan Nilai Tukar Rupiah terhadap Dollar Amerika... 107 BAB V PENUTUP... 116 A. Kesimpulan... 116 B. Saran... 117 DAFTAR PUSTAKA... 118 LAMPIRAN... 122 xi
DAFTAR TABEL Tabel 2. 1 Probabilitas nilai fitness... 65 Tabel 2. 2 Nilai fitness dan probabilitas nilai fitness... 66 Tabel 4. 1. Himpunan universal data input dan target... 81 Tabel 4. 2 Himpunan fuzzy dan domain... 82 Tabel 4. 3 Hasil MAPE data training dan testing... 87 Tabel 4. 4 Hasil eliminasi input... 89 Tabel 4. 5 Representasi Gen... 92 Tabel 4. 6 Nilai fitness pada populasi awal... 95 Tabel 4. 7 Urutan nilai fitness... 96 Tabel 4. 8 Nilai fitness sesuai ranking... 97 Tabel 4. 9 Probabilitas nilai fitness... 97 Tabel 4. 10 Probabilitas kumulatif... 98 Tabel 4. 11 Hasil percobaan Algoritma Genetika... 103 Tabel 4. 12 Perbandingan nilai MAPE... 104 Tabel 4. 13 Variabel input yang digunakan untuk peramalan nilai tukar rupiah terhadap dollar Amerika pada periode Agustus 2016 hingga Januari 2017... 108 Tabel 4. 14 Nilai dari variabel input... 108 Tabel 4. 15 Hasil fuzifikasi variabel input... 109 xii
DAFTAR SIMBOL = rata-rata = autokovariansi pada lag-k = autokorelasi pada lag-k = waktu pengamatan, t= 1, 2, 3,... = pengamatan pada saat t k = selisih waktu, k=1, 2, 3,... n = banyak pengamatan α mc = rata-rata pengamatan = standar error koefisien autokorelasi pada lag k = derajat keanggotaan di himpunan fuzzy = fungsi keanggotaan himpunan fuzzy = variabel input yang sudah terfuzzifikasi, i = 1, 2,.., n = bobot dari neuron ke i pada lapisan input yang menghubungkan dengan neuron ke j pada lapisan tersembunyi, dengan j=1, 2,..., p = nilai keluaran pada lapisan tersembunyi = nilai output dalam derajat keanggotaan himpunan fuzzy, dengan k=1, 2,..., q = bobot dari neuron ke j pada lapisan tersembunyi yang menghubungkan dengan neuron ke k pada lapisan output = bobot bias yang menuju ke neuron ke j pada lapisan tersembunyi = bobot bias yang menuju ke neuron ke k pada lapisan output = laju pembelajaran = hasil peramalan pada waktu t = momentum xiii
DAFTAR GAMBAR Gambar 2. 1 Contoh plot autokorelasi... 16 Gambar 2. 2 Representasi Linear Naik... 21 Gambar 2. 3 Himpunan fuzzy kurs naik... 21 Gambar 2. 4 Representasi Linier Turun... 22 Gambar 2. 5 Himpunan fuzzy kurs turun... 23 Gambar 2. 6 Kurva segitiga... 24 Gambar 2. 7 Himpunan fuzzy kurs sedang... 25 Gambar 2. 8 Kurva trapesium... 26 Gambar 2. 9 Himpunan fuzzy kurs sedang... 26 Gambar 2. 10 Kurva-S untuk Pertumbuhan... 28 Gambar 2. 11 Himpunan fuzzy kurs naik... 29 Gambar 2. 12 Kurva S untuk penyusutan... 30 Gambar 2. 13 Himpunan fuzzy kurs turun... 31 Gambar 2. 14 Kurva gauss... 32 Gambar 2. 15 Himpunan fuzzy kurs sedang... 32 Gambar 2. 16 Pembentukan sistem fuzzy... 35 Gambar 2. 17 Jaringan dengan lapisan tunggal... 38 Gambar 2. 18 Jaringan dengan banyak lapisan... 39 Gambar 2. 19 Jaringan dengan lapisan kompetitif... 40 Gambar 2. 20 Fungsi undak biner... 41 Gambar 2. 21 Fungsi bipolar... 41 Gambar 2. 22 Fungsi linier... 42 xiv
Gambar 2. 23 Fungsi saturating linear... 42 Gambar 2. 24 Fungsi symetric saturating linear... 43 Gambar 2. 25 Jaringan Backpropagation dengan 1 output... 46 Gambar 2. 26 Bagan algoritma genetika... 59 Gambar 2. 27 Sistematis proses pindah silang... 67 Gambar 2. 28 Sistematika proses mutasi... 70 Gambar 3. 1 Desain penelitian... 74 Gambar 4. 1 Plot ACF kurs (nilai tukar) rupiah terhadap dollar Amerika periode Januari 2006 sampai Juli 2016... 76 Gambar 4. 2 Plot ACF data inflasi Indonesia periode Januari 2006 hingga Juli 2016... 77 Gambar 4. 3 Plot ACF Jumlah Uang Beredar (JUB) di Indonesia periode Januari 2006 hingga Juli 2016... 77 Gambar 4. 4 Plot ACF tingkat Suku Bunga Indonesia (SBI) periode Januari 2006 hingga Juli 2016... 78 Gambar 4. 5 Grafik keanggotaan himpunan fuzzy hingga dan Y... 82 Gambar 4. 6 Grafik keanggotaan himpunan fuzzy hingga... 83 Gambar 4. 7 Grafik keanggotaan himpunan fuzzy hingga... 84 Gambar 4. 8 Grafik fungsi keanggotaan himpunan fuzzy hingga... 85 Gambar 4. 9 Arsitektur Fuzzy Backpropagation Neural Network... 90 Gambar 4. 10 Grafik hasil percobaan algoritma genetika... 104 Gambar 4. 11 Scatterpot kurs asli dan peramalan data training... 105 Gambar 4. 12 Scatterpot kurs asli dan peramalan data testing... 106 xv
Gambar 4. 13 Plot ACF dari error model FBPNN yang telah dioptimasi dengan Algoritma Genetika... 106 Gambar 4. 14 Plot PACF dari error model FBPNN yang telah dioptimasi dengan Algoritma Genetika... 107 Gambar 4. 15 Grafik nilai kurs IDR/USD asli dan nilai kurs IDR/USD prediksi... 112 xvi
DAFTAR LAMPIRAN Lampiran 1 Data kurs Rupiah terhadap Dollar Amerika, inflasi di Indonesia, Jumlah Uang Beredar (JUB), dan Tingkat Suku Bunga Indonesia (SBI) periode Januari 2006 Juli 2010 (Sumber: Bank Indonesia)... 122 Lampiran 2 Data training... 126 Lampiran 3 Data testing... 128 Lampiran 4 Program fuzzifikasi dengan MATLAB R2013a pada input dan target menggunakan fungsi keanggotaan kurva S pertumbuhan dengan 1 himpunan.. 112 Lampiran 5 Hasil fuzzifikasi data training... 112 Lampiran 6 Hasil fuzzifikasi data testing... 114 Lampiran 7 Program FBPNN untuk mencari neuron terbaik menggunakan program MATLAB R2013a dengan fungsi aktivasi sigmoid biner pada lapisan tersembunyi dan lapisan output dengan menggunakan pembelajaran traingdx116 Lampiran 8 Nilai output model FBPNN dengan 33 input, 14 neuron pada lapisan tersembunyi, dan 1 output dalam derajat keanggotaan himpunan fuzzy... 119 Lampiran 9 Nilai output model FBPNN dengan 33 input, 14 neuron pada lapisan tersembunyi, dan 1 output dalam rupiah... 120 Lampiran 10 Program FBPNN dengan 33 input, 14 lapisan tersembunyi, dan 1 lapisan output untuk mencari input yang optimal menggunakan program MATLAB R2013a dengan fungsi aktivasi sigmoid biner pada lapisan tersembunyi dan lapisan output.... 121 xvii
Lampiran 11 Nilai output model FBPNN dalam derajat keanggotaan himpunan fuzzy dengan 4 variabel input, 14 neuron pada lapisan tersembunyi, dan 1 output... 124 Lampiran 12 Nilai output model FBPNN dalam rupiah dengan 4 variabel input, 14 neuron pada lapisan tersembunyi, dan 1 output... 125 Lampiran 13 Bobot model FBPNN dengan 4 neuron pada lapisan input, 14 neuron pada lapisan tersembunyi, dan 1 neuron pada lapisan output... 126 Lampiran 14 Populasi awal... 118 Lampiran 15 Program Algoritma Genetika menggunakan MATLAB R2013 untuk mengoptimalkan bobot FBPNN... 129 Lampiran 16 Populasi akhir... 136 Lampiran 17 Bobot dari Algoritma Genetika... 147 Lampiran 18 Output dalam derajat keanggotaan himpunan fuzzy dari model FBPNN yang telah dioptimasi dengan Algoritma Genetika... 148 Lampiran 19 Output dalam rupiah dari model FBPNN yang telah dioptimasi dengan Algoritma Genetika... 149 xviii