JURNAL GAUSSIAN, Volume 7, Nomor 4,  Tahun 2018, Halaman 373 -384 Online di: https://ejournal3.undip.ac.id/index.php/gaussian /

## PERAMALAN MENGGUNAKAN MODEL FEED FORWARD NEURAL NETWORK DENGAN ALGORITMA
ADAPTIVE SIMULATED ANNEALING
(Studi kasus: Harga minyak mentah dunia yang dipublikasikan oleh OPEC)
Affan Hanafaie 1 , Sugito 2 , Sudarno 3
1,2,3 Departemen Statistika, Fakultas Sains dan Matematika, Universitas Diponegoro e-mail : sugitostat@gmail.com

## ABSTRACT
Today, crude oil trading industry is still an important industry in the world because it still has high fuel oil consumption. The crude oil prices tend to fluctuate causing the prediction of crude oil in the coming periods to be a challenge. Forecasting the price of crude oil can be done by various methods, one of them is ARIMA Box-Jenkins  model  with  OLS  method to  estimate the parameter,  but this method has several assumptions that must be met. As time goes by, many methods that discovered, one of them is artificial neural network which can combined with various parameter optimization methods  such as Adaptive Simulated Annealing algorithm. Adaptive Simulated Annealing algorithm is an optimization method that inspired by the process of crystallization, the advantages of this algorithm has a running time faster than similar algorithms. The combination of artificial neural networks and Adaptive Simulated Annealing algorithms can be used to model the historical data without requiring assumptions in the analysis. Based on the analysis on this research, the best model is obtained FFNN 2-5-1 with MAPE value of 1.0042%.
Keywords :  neural network, Adaptive Simulated Annealing , crude oil.

## 1. PENDAHULUAN
Indonesia  dikenal  sebagai  negara  yang  kaya akan  sumber  daya  alam,  hasil  bumi serta hasil  tambang  yang  sangat  melimpah,  salah  satunya  adalah  minyak  bumi.  Industri minyak  bumi  di  Indonesia  sudah  lama  berjalan,  setelah  73  tahun  merdeka  sumber  energi utama Indonesia  tidak  banyak  berubah  dengan  tetap mengandalkan  bahan bakar fosil  ini. Bahan bakar fosil  yang paling  banyak digunakan  di Indonesia  didominasi  oleh  bahan bakar minyak  dengan persentase sebesar 33.8%, bahan bakar gas sebesar 23.9%, bahan bakar batu bara sebesar 34.6% dan 7.7% berbasis energi baru terbarukan. Dalam rentang waktu antara tahun  1970  hingga  akhir  tahun  1990  Indonesia  menjadi  produsen  minyak  dan  gas dunia. Kemudian pada awal tahun 1997 Indonesia mengalami  resesi ekonomi  yang mengakibatkan perubahan  drastis  kondisi  perekonomian  Indonesia.  Sejak  saat  itu  produksi  minyak  di Indonesia  semakin  menurun,  dan saat ini  produksi  minyak  mentah  di  Indonesia  berada di kisaran  875.000  barel  per  hari  dengan  tingkat  kebutuhan  minyak  hasil  produksi  sekitar 1.500.000  barel per hari ( www.esdm.go.id ).
Menurut Wei (2006) dalam analisis  runtun waktu bagian yang paling  penting  adalah untuk  meramalkan  nilai  di  masa yang akan datang. Istilah  ramalan  lebih  sering  digunakan daripada  istilah  perkiraan  pada literatur  runtun  waktu, hasil  peramalan  runtun  waktu pada umumnya  berdasarkan  teori  umum  dari linier  prediction . Dalam  praktiknya  terkadang asumsi tersebut justru menjadi  kendala ketika tidak terpenuhi  pada saat proses analisis,  oleh karena  itu  diperlukan  metode  alternatif  untuk  mengatasi  kendala  tersebut  dengan  tetap memberikan  hasil  estimasi  yang  baik,  salah  satunya  adalah  metode Adaptive Simulated Annealing karena hanya diperlukan  membangun  model  dan melakukan  optimalisasi  bobot tanpa  melakukan  uji  asumsi.  Penggunaan  metode Adaptive Simulated Annealing dapat dikombinasi  dengan  model Neural  Network, berdasarkan  penelitian  sebelumnya  yang dilakukan  oleh  Mousavi  et al. (2017) penggunaan Neural Network dan Adaptive Simulated
Annealing mampu meningkatkan  kemampuan  prediksi  model,  dan dari perbandingan  yang dilakukan  mampu  memberikan  hasil  yang  lebih  baik  dari  kombinasi  Neural  Network dengan Support Vector Machine.
Artificial Neural Network atau yang biasa disebut  jaringan  syaraf tiruan  merupakan sistem  untuk  memproses  informasi  yang  memiliki  karakteristik  mirip  dengan  jaringan syaraf  pada  makhluk  hidup  (Fauset,  1994).  Dalam  perkembangannya Artificial  Neural Network lebih  dikenal  dengan  nama Neural  Network tanpa  menggunakan  imbuhan Artificial .  Secara  garis  besar Neural  Network terdiri  dari  dua  tahapan  dalam  proses pengolahan  informasi  atau  data masukan,  yaitu  tahap learning dan tahap testing. Dalam tahap training proses  perhitungan  bobot  optimal  dapat  menggunakan  berbagai  metode optimasi,  salah  satunya  adalah  metode Adaptive  Simulated  Annealing atau  yang  lebih dikenal  dengan Simulated Annealing . Kelebihan  algoritma Adaptive Simulated Annealing yaitu  memiliki  waktu running yang lebih  cepat dibandingkan  dengan algoritma  sejenisnya seperti algoritma  genetika (Adewole et al., 2012). Simulated Annealing merupakan metode optimasi  yang diadaptasi  dari proses pembuatan logam  padat dengan metode cold working .

## 2. TINJAUAN PUSTAKA

## 2.1. Minyak Bumi
Minyak  bumi  merupakan  salah  satu  hasil  tambang  potensial  yang  dimiliki  oleh Indonesia,  hal ini  dibuktikan  dengan banyaknya  wilayah di Indonesia  yang memiliki  potensi minyak  bumi.  Selain  menjadi  menjadi  hasil  tambang potensial  untuk  dijual  faktanya minyak bumi  menjadi  salah  satu  kebutuhan  energi  masyarakat  Indonesia  yang  masih  sulit tergantikan.  Pada tahun  2015  diketahui  cadangan  potensial  minyak  sebanyak  3,70  miliar barel dan cadangan terbukti  sebanyak 3,60 miliar  barel. Cadangan minyak  bumi  di Indonesia tersebar di  berbagai daerah, dimana  sebagian besarnya berada di  Sumatera sebesar 66,35% dari  total  cadangan  minyak  bumi  nasional  atau sebanyak  4,83  miliar  barel.  Sedangkan  di daerah  Jawa dan  Kalimantan  masing-masing  memiliki  cadangan  minyak  bumi  sebanyak 1,78  miliar  barel  dan  0,52  barel,  sisanya  sebanyak  0,15  barel  terdapat  di  daerah  Papua, Maluku,  dan Sulawesi (DEN, 2016).

## 2.2. Analisis Runtun Waktu
Data  runtun  waktu  memiliki  ruang  lingkup  yang  sangat  luas,  oleh  karena  itu mengakibatkan  analisis  runtun waktu menjadi  sebuah ilmu  yang tidak  terbatas ruang lingkup penerapanya (Cryer & Chan,  2008).  Analisis  runtun  waktu merupakan  salah satu prosedur statistika  yang  diterapkan  untuk  meramalkan  keadaan yang  akan  datang  berdasarkan data masa lalu.

## 2.3. Fungsi Autokorelasi
Menurut wei (2006),  dari suatu runtun  waktu yang stasioner ( 𝑍 𝑡 ), terdapat nilai  mean 𝐸(𝑍 𝑡 ) = 𝜇 dan varians 𝑉𝑎𝑟(𝑍 𝑡 ) = 𝐸(𝑍 𝑡 − 𝜇) 2 = 𝜎 2 yang konstan. Kovarian  antara 𝑍 𝑡 dan 𝑍 𝑡+1 adalah sebagai berikut  : 𝛾 𝑘 = 𝑐𝑜𝑣(𝑍 𝑡 , 𝑍 𝑡+𝑘 )
Suatu  runtun  waktu  stasioner  dapat  diestimasi  rata-rata ( µ )  dan  fungsi  autokorelasi  ( 𝜌 k ) sebagai berikut: 𝜌 𝑘 = 𝛾 𝑘 𝛾 0 = 𝑐𝑜𝑣(𝑍 𝑡 ,𝑍 𝑡+𝑘 ) 𝑐𝑜𝑣(𝑍 𝑡 ,𝑍 𝑡 )

## 2.4. Fungsi Autokorelasi Spasial
Fungsi  autokorelasi  parsial  (PACF)  dapat  diturunkan  berdasarkan  model  regresi dengan 𝑍 𝑡+𝑘 sebagai variabel  terikat  dari sebuah proses stasioner dengan  rata-rata nol  yang diregresikan  dengan variabel 𝑍 𝑡+𝑘−1 , 𝑍 𝑡+𝑘−2 ,  . . . , 𝑍 𝑡 pada lag  ke-k  (Wei,  2006).  Dengan fungsi  PACF sebagai berikut:
𝜙 𝑘𝑘 = | 1 𝜌 1 𝜌 2 𝜌 1 1 𝜌 1 ⋮ 𝜌 𝑘−1 ⋮ 𝜌 𝑘−2 ⋮ 𝜌 𝑘−3 … 𝜌 𝑘−2 𝜌 1 ⋯ 𝜌 𝑘−3 𝜌 2 ⋱ … ⋮ 𝜌 1 ⋮ 𝜌 𝑘 | | 1 𝜌 1 𝜌 2 𝜌 1 1 𝜌 1 ⋮ 𝜌 𝑘−1 ⋮ 𝜌 𝑘−2 ⋮ 𝜌 𝑘−3 … 𝜌 𝑘−2 𝜌 𝑘−1 ⋯ 𝜌 𝑘−3 𝜌 𝑘−2 ⋱ … ⋮ 𝜌 1 ⋮ 1 |

## 2.5. Jaringan Syaraf  Tiruan
Menurut  Haykin  (2009)  jaringan  syaraf  tiruan  terinspirasi  dari  cara  kerja  otak manusia yang sangat berbeda dengan komputer  digital  pada umumnya,  dimana otak manusia sangat kompleks,  tidak  linier,  dan bersifat paralel  dalam memproses informasi.  Pada neural network terdapat  beberapa  komponen  didalamnya,  menurut  Kusumadewi  (2003), neural network memiliki  beberapa  bagian  utama  yang  menyusunya  seperti  halnya  pada  otak manusia  antara lain:  input,  fungsi  aktivasi,  neuron/node,  bias & threshold,  hidden  layer,  dan output.
Gambar 1. Ilustrasi  Model  FFNN dengan satu hidden layer

## 2.6. Pre-processing dan Post-Processing
Pada komputasi  menggunakan  jaringan  syaraf tiruan  seringkali  sebelum  dilakukan tahap pelatihan  dilakukan  penskalaan  pada input  dan target sehingga  data masuk pada skala tertentu, hal tersebut bertujuan  supaya data dapat diproses sesuai dengan fungsi  aktivasi yang digunakan  (Warsito,  2009).  Proses mengubah  skala data sebelum  dilakukan  tahap pelatihan disebut  pre-processing,  sedangkan  proses  penskalaan  setelah  dilakukan  tahap  pelatihan disebut  post-processing.  menurut  Patro  &  Sahu  (2015)  transformasi  dilakukan  untuk mengubah  skala data dan transformasi  juga  bermanfaat untuk  mengurangi  nilai error untuk prediksi  atau peramalan.  Salah  satu transformasi  yang  sudah  dikenal  adalah  transformasi min-max,  dengan rumus sebagai berikut:
𝑥 𝑡 ′ = ( 𝑥 𝑡 −min (𝑥) max(𝑥)−min (𝑥) )

## 2.7. Mean Absolute Error (MAE)
Willmot  dan  Matsuura  (2005)  mengindikasikan  bahwa  MAE  merupakan  skala pengukuran  error yang paling  alami dari rata-rata skala pengukuran  error tidak seperti RMSE
𝒙 𝟏 𝒙 𝟐 𝒙 𝒏 𝑌 1 𝒛 𝟏 𝒛 𝒋 𝒛 𝟐 1
maupun  MSE,  MAE merupakan  skala pengukuran  error yang  tidak  bersifat  ambigu.  MAE dapat dihitung  dengan rumus sebagai berikut:
𝑀𝐴𝐸 = 1 𝑛 ∑ |𝑌 𝑡 ̂ − 𝑌 𝑡 | 𝑛 𝑡=1

## 2.8. Mean Absolute Percentage Error (MAPE)
Dalam  penaksiran  model  diperlukan  alat  untuk  mengukur  kemampuan  model terutama untuk  peramalan,  salah satu alat tersebut adalah  Mean Absolute  Percentage Error atau MAPE. Menurut  Hyndman  dan  Koehler  (2006)  persentase error sudah  sangat  sering digunakan  untuk  membandingkan  kemampuan  peramalan  dari  beberapa  data  set  yang berbeda, dengan rumus MAPE sebagai berikut:
𝑀𝐴𝑃𝐸 = 1 𝑛 ∑ |100% × 𝑌 𝑡 ̂ −𝑌 𝑡 𝑌 𝑡 | 𝑛 𝑡=1

## 2.9. Adaptive Simulated Annealing
Metode adaptive simulated  annealing  atau yang biasa dikenal  dengan simulated annealing  adalah sebuah metode optimasi  modern yang diadaptasi  dari proses pembuatan kristal  logam  yang menggunakan  teknik  cold working.  Menurut Rao (2009),  proses pendinginan  dalam pembuatan  kristal  yang terjadi  dalam cold  working  dapat dikontrol dengan menggunakan  distribusi  peluang  Boltzmann  dengan energi  yang disimbolkan dengan E dan suhu disimbolkan  dengan T dengan peluang  sebagai berikut: 𝑃(𝐸) = 𝑒 −𝐸/𝑐𝑇
dimana  P(E) adalah peluang  energi yang diterima  pada level  E, dan c adalah konstanta Boltzmann  dengan nilai  sebagai berikut: c = 1,38 × 10 −23 J/K = 1,38 × 10 −16 erg/K.
Menurut Szu  (1987) pada dasarnya penurunan  suhu buatan ( 𝑇 𝑘 ) akan berbeda dengan suhu termodinamika  sebenarnya ( 𝑇 ), suhu buatan tersebut nilainya  berbanding  terbalik  dengan fungsi  logaritma  dari  waktu pada saat itu  dengan suhu awal adalah 𝑇 0 , suhu pada iterasi  ke- k ( 𝑇 𝑘 ) dapat dihitung  dengan rumus sebagai berikut: 𝑇 𝑘 𝑇 0 = 1 ln (1+𝑘)
Secara sederhana langkah-langkah  perhitungan  algoritma Simulated Annealing dapat dituliskan  sebagai berikut: 1. Menetapkan nilai 𝑤 𝑖 dengan 𝑖 = 0 sebagai bobot  awal dan menetapkan stopping criteria .
2. Menghitung  nilai 𝑓 1 =  𝑓(𝑤 1 ) . 3. Bangkitkan  nilai  baru 𝑤 𝑖+1 disekitar 𝑤 𝑖 dan hitung  nilai 𝑓(𝑤 𝑖+1 ) . 4. Hitung  suhu  pada iterasi ke-i dengan rumus 𝑇 𝑘 = 𝑇 0 ln (1+𝑘)
5. Hitung ∆𝑓 = ∆𝐸 = 𝑓(𝑤 𝑖+1 ) −  𝑓(𝑤 𝑖 ) .
6. Jika nilai ∆𝐸 bernilai  kurang dari sama dengan nol  maka nilai 𝑤 𝑖+1 diterima  dan lanjut ke nomor  7, jika ∆𝐸 bernilai  lebih  dari nol  maka dihitung  nilai  peluang 𝑃(𝐸) = 𝑒 −∆𝐸/𝑐𝑇 .
7. Bangkitkan  nilai  random  antara 0 dan 1 dan kemudian  bandingkan  dengan nilai 𝑃(𝐸) , jika  nilai 𝑃(𝐸) lebih  kecil  dari bilangan  random yang dibangkitkan  maka tolak  nilai 𝑤 𝑖+1 , jika  tidak terima  milai 𝑤 𝑖+1 sebagai bobot  baru.
8. Jika stopping criteria sudah tercapai maka iterasi  dihentikan  dan nilai 𝑤 𝑖+1 menjadi vektor bobot  akhir,  jika  tidak maka 𝑤 𝑖+1 menjadi 𝑤 𝑖 dan proses diulangi  mulai  nomor  2.

## 2.10 Peramalan
1. Recursive Forecasting
Menurut  Ahmed  &  Khalid  (2017)  metode  recursive  forecasting  adalah  metode peramalan beberapa langkah  ke depan dengan menggunakan  model yang sama dimana  hasil peramalan  yang terakhir  digunakan  sebagai nilai  input  pada peramalan  selanjutnya,  namun hasil  peramalan  metode  ini  memungkinkan  memberi  hasil  yang  tidak  akurat  untuk peramalan jangka  panjang.
2. Direct Forecasting
Metode  direct  forecasting  adalah  metode  peramalan  yang  berdasarkan  prinsip peramalan  dimana  setiap  langkah  peramalan  saling  bebas satu  sama lain,  sehingga  untuk meramalkan  sejumlah  (h)  langkah  ke  depan  membutuhkan  model  sebanyak  (H)  dimana peramalan  yang  dilakukan  pada  setiap  langkah  tanpa  memasukkan  nilai  hasil  peramalan sebelumnya  (Ahmed & Khalid,  2017).

## 3. METODE PENELITIAN

## 3.1. Sumber  Data dan Variabel  Penelitian
Data yang digunakan  dalam penelitian  ini  adalah data sekunder yang merupakan data harga minyak  mentah dunia  yang dikeluarkan  OPEC dan diperoleh  dari http://www.opec.org mulai  tanggal  2 Januari 2015  hingga  tanggal  3 Mei 2018.  Data dibagi  menjadi  dua bagian, yaitu  90% data training  dan  10% data testing.  data training  digunakan  untuk  membangun model  dan data testing digunakan  untuk  menghitung  eror dari peramalan model.

## 3.2. Teknik Pengolahan Data
Model  neural  network yang digunakan  dalam penulisan  tugas akhir ini  adalah model Feed  Forward  Neural  Network  (FFNN)  dengan  fungsi  aktivasi  sigmoid  biner  dan  fungsi aktivasi  linier.  Arsitektur jaringan  FFNN yang dibangun  adalah dengan input  x_i dimana i = 1,2,...,p  dan  satu  unit  hidden  layer,  sedangkan  untuk  mencari  hasil  yang  terbaik  untuk melakukan  peramalan  akan  dilakukan  percobaan,  yaitu  meminimalkan  MAE  dengan memasukkan  kombinasi  beberapa input  sesuai plot  ACF dan PACF serta kombinasi  jumlah hidden  nodes  sebanyak 5 dan 10,  serta pemberian  beberapa nilai  sebagai  batas bobot  pada tahap  training  dengan  metode  Adaptive  Simulated  Annealing  dan  suhu  awal  sebesar 100. Langkah-langkah  dalam proses training dan testing FFNN dengan metode optimasi Adaptive Simulated Annealing adalah sebagai berikut:
1. Identifikasi  lag
Identifikasi  lag  bertujuan  untuk  menentukan  variabel  x  sebagai  input  yang  akan digunakan  berdasarkan hasil  plot  PACF.
2. Inisialisasi  fungsi  & input
Inisialisasi  input  bertujuan untuk  menentukan nilai-nilai  tertentu yang diinginkan,  dalam analasis ini  yang ditentukan  nilai-nilainya  antara lain:  jumlah  iterasi, batas atas dan batas bawah bobot.  Sedangkan  inisialisasi  fungsi  bertujuan  untuk  menentukan  fungsi  yang akan diminimalkan,  pada tugas akhir  ini  gunakan fungsi  MAE dan MAPE.
3. Pre-Processing
Transformasi  data untuk  proses training  maupun  testing  yang  dilakukan  pada  analisis yang dilakukan  bertujuan  untuk mengecilkan  skala data untuk  menyesuaikan  skala data dengan fungsi  aktivasi  yang digunakan,  yaitu fungsi  aktivasi  sigmoid  biner.
4. Inisialisasi  bobot  awal
Inisialisasi  bobot awal pada tahap iterasi yang pertama adalah sebagai bobot  awal untuk menghitung  nilai  eror awal.
5. Inisialisasi  suhu awal
Inisialisasi  suhu awal ditujukan  sebagai nilai  awal dalam penbentukan  suhu pada tahap iterasi berikutnya
6. Perhitungan  eror awal
Perhitungan  eror awal dilakukan  sebagai pembanding  hasil  akhir iterasi  apakah terlihat adanya perubahan nilai  eror setelah dilakukan  proses iterasi dan perhitungan  eror awal digunakan  untuk  menghitung  peluang  penerimaan  pada iterasi selanjutnya.
7. Membangkitkan  bilangan  acak seragam (0,1)
Pembangkitan  bilangan  acak seragam (0,1)  dilakukan  untuk  mendapatkan  bobot  baru untuk  iterasi selanjutnya.
8. Menghitung  suhu baru
Perhitungan  suhu baru dilakukan  dengan skala yang sudah ditetapkan  untuk  melakukan perhitungan  peluang  penerimaan.
9. Menghitung  eror
Perhitungan  eror  pada  setiap  iterasi  sangat  penting  untuk  dilakukan,  selain  untuk dibandingkan  dengan stopping  critera tapi juga untuk menghitung  peluang  peneriamaan pada proses Adaptive  Simulated  Annealing.
10. Menghitung  nilai  peluang  penerimaan
Perhitungan  peluang  penerimaan sangat penting  karena dari peluang  peneriaman inilah dapat diputuskan  apakah bobot  awal yang digunakan  akan digantikan  dengan bobot baru atau tidak.
11. Mengganti  bobot  baru
Penggantian  bobot  baru  dilakukan  jika  bobot  baru  yang  sebelumnya  dibangkitka n dianggap  memberikan  hasil  yang lebih  baik  pada tahap iterasi.
12. Melakukan  looping
Looping  yang  dilakukan  adalah pengulangan  tahapan ke-7 sampai  tahap ke-11 sampai mendapatkan  hasil  yang optimal  atau sampai memenuhi  salah satu stopping  criteria.
13. Tahap testing
Pada  tahap  ini  bobot  optimal  yang  sudah  didapatkan  digunakan  untuk  menghitung output  baru menggunakan  data testing.
14. Post-Processing
Tujuan transformasi data pada akhir porses iterasi bertujuan untuk mengembalikan  skala data ke skala semula karena sebelumnya  sudah dilakukan  pengecilan  skala data.
15. Menghitung  nilai  MAPE
Perhitungan  nilai  MAPE dilakukan  setelah data melalui  tahap post-processing  sehingga nilai  data yang digunakan  sudah kembali  pada skala aslinya.
16. Pemilihan  model  terbaik
Pemilihan  model  terbaik  yang  dilakukan  pada  tugas  akhir  ini  adalah  dengan menggunakan  kriteria  MAPE  yang  diperoleh  dari  perhitungan  MAPE  pada  tahap testing.
17. Peramalan
Tujuan  dari proses peramalan  ini  adalah untuk  mengetahui  harga minyak  mentah dunia yang  akan  datang  atau  pada  periode  berikutnya  berdasarkan  model  terbaik  yang digunakan.

## 4. HASIL DAN PEMBAHASAN

## 4.1 Penentuan Input dan Target Jaringan
Berdasarkan Gambar  2 bisa  disimpulkan  data runtun  waktu harga  minyak  mentah dunia  yang  digunakan  tidak  bisa  dimodelkan  menggunakan  model  MA karena nilai  ACF- nya  terus  meluruh  atau  turun  secara  eksponensial,  namun  dapat  dimodelkan  secara
autoregresif  karena  terpotong  pada  lag  1  dan  2  pada  plot  PACF,  sehingga  berdasarkan Gambar  2  dapat  digunakan  variabel 𝑌 𝑡−1 dan 𝑌 𝑡−2 sebagai  variabel  input  dalam  jaringan dengan 𝑌 𝑡 sebagai targetnya.
Gambar  1. Plot ACF dan PACF

## 4.2 Arsitektur Jaringan
Jaringan  yang  dibangun  adalah  FFNN  yang  terdiri  dari  3  lapisan,  yaitu  lapisan masukan  (input),  lapisan  tersembunyi  (hidden  layer), dan lapisan  keluaran  (output).  Dalam menentukan  variabel  input  dalam  jaringan  syaraf tiruan tidak  ada ketentuan tertentu, namu n pada penilitian  ini  variabel  input  yang digunakan  dibatasi  berdasarkan kesimpulan  dari plot ACF dan PACF. Begitu  juga dengan jumlah  neuron/hidden  nodes tidak  ada ketentuan yang menyatakan  berapa  seharusnya  jumlah  hidden  nodes  yang  digunakan,  sehingga  dibatasi sejumlah  5 dan 10 yang akan dikombinasi  dengan variabel input  untuk membangun  beberapa model.  Hasil kombinasi  tersebut menghasilkan  6 model  FFNN, yaitu:
1. 𝑌 𝑡−1 sebagai variabel  input  dengan jumlah hidden nodes sebanyak 5. 2. 𝑌 𝑡−1 sebagai variabel  input  dengan jumlah hidden nodes sebanyak 10. 3. 𝑌 𝑡−2 sebagai variabel  input  dengan jumlah hidden nodes sebanyak 5. 4. 𝑌 𝑡−2 sebagai variabel  input  dengan jumlah hidden nodes sebanyak 10. 5. 𝑌 𝑡−1 dan 𝑌 𝑡−2 sebagai variabel  input  dengan jumlah hidden nodes sebanyak 5. 6. 𝑌 𝑡−1 dan 𝑌 𝑡−2 sebagai variabel  input  dengan jumlah hidden nodes sebanyak 10.

## 4.3 Pre -Processing
Karena dalam penggunaan  fungsi  aktivasi  sigmoid  binner  diperlukan  skala data yang sesuai dengan skala yang ada pada fungsi  sigmoid  binner  yaitu  antara 0 dan 1, maka data yang digunakan  dalam proses training  baik input  maupun  target perlu diubah  skalanya dengan rumus sebagai berikut:
𝑥 𝑡 ′ = ( 𝑥 𝑡 −min(𝑥) max(𝑥)−min(𝑥) ) 𝑥 1 ′ = ( 𝑥 1 −22,48 64,96−22,48 ) 𝑥 1 ′ = ( 51,78−22,48 64,96−22,48 ) 𝑥 1 ′ = 0,6897 𝑥 2 ′ = ( 48,87−22,48 64,96−22,48 ) 𝑥 2 ′ = 0,6212 ⋮ 𝑥 775 ′ = ( 64,84−22,48 64,96−22,48 ) 𝑥 775 ′ = 0,9972
70 65 60 55 50 45 40 35 30 25 20 15 10 5 1 1,0 0,8 0,6 0,4 0,2 0,0 -0,2 -0,4 -0,6 -0,8 -1,0 Lag A ut oc or re la ti on Autocorrelation Function for harga minyak (with 5% significance limits for the autocorrelations) 70 65 60 55 50 45 40 35 30 25 20 15 10 5 1 1,0 0,8 0,6 0,4 0,2 0,0 -0,2 -0,4 -0,6 -0,8 -1,0 Lag Pa rt ia l A ut oc or re la ti on Partial Autocorrelation Function for harga minyak (with 5% significance limits for the partial autocorrelations)
4.4 Proses Training dengan Algoritma Adaptive Simulated Annealing (ASA)
Dalam  praktiknya  tidak  ada aturan  tertentu  mengenai  batas  yang  harus  digunakan dalam ASA, sehingga  pada tugas akhir  kali  ini  diuji  coba beberapa kali  dengan 4 batas yang berbeda beda, batas yang digunakan  antara lain: −∞ < 𝑤 < ∞, −5 ≤ 𝑤 ≤ 5, −3 ≤ 𝑤 ≤ 3, dan −1 ≤ 𝑤 ≤ 1 . Masing-masing  batas tersebut akan digunakan  untuk ke-6 model  jaringan  yang sudah dibuat  sebelumnya,  dengan prosedur sebagai berikut:
1. Inisialisai  Bobot Awal
Inisialisasi  bobot  awal dilakukan  sebelum  dilakukannya  proses iterasi pertama kali, jadi  inisialisasi  bobot  awal dilakukan  pada iterasi ke-0. Bobot  awal yang dipakai  diperoleh dari  membangkitkan  bilangan  random  dengan  banyaknya  bilangan  random  sesuai  dengan jumlah  bobot  yang ada dalam jaringan,  dipilih  model  dengan 𝑌 𝑡−1 dan 𝑌 𝑡−2 sebagai variabel input  dan jumlah hidden nodes sebanyak 5 dengan interval  pembangkitan  bilangan  random antara -1 dan 1 sebagai ilustrasinya.  Maka untuk  bobot  awal dibangkitkan  bilangan  random sebanyak 21 sebagai berikut:
Tabel 1. Bobot Awal (w0) Bobot Keterangan 0,0994  input 𝑌 𝑡−1 ke hidden  layer 1 0,7383  input 𝑌 𝑡−2 ke hidden  layer 1 0,2821  input 𝑌 𝑡−1 ke hidden  layer 2 0,1202  input 𝑌 𝑡−2 ke hidden  layer 2 0,8342  input 𝑌 𝑡−1 ke hidden  layer 3 0,7642  input 𝑌 𝑡−2 ke hidden  layer 3 0,7657  input 𝑌 𝑡−1 ke hidden  layer 4 0,0948  input 𝑌 𝑡−2 ke hidden  layer 4 0,7107  input 𝑌 𝑡−1 ke hidden  layer 5 0,4631  input 𝑌 𝑡−2 ke hidden  layer 5 0,0942  hidden  layer 1 ke output 0,5846  hidden  layer 2 ke output 0,8208  hidden  layer 3 ke output 0,1455  hidden  layer 4 ke output 0,8669  hidden  layer 5 ke output 0,9696  bias ke hidden  layer 1 0,0956  bias ke hidden  layer 2 0,3879  bias ke hidden  layer 3 0,7694  bias ke hidden  layer 4 0,2949  bias ke hidden  layer 5
0,8759  bias ke output
Setelah  diperoleh  bobot  awal  selanjutnya  adalah  menghitung  output  jaringan  untuk menghitung  nilai  erornya,  ilustrasi  perhitungan  output  jaringan  dari  model  yang  digunakan sebagai berikut:
𝑌 𝑡 = 𝜓 0 {𝑏 𝑤 𝑏0 + ∑ 𝑤 𝑗 𝜓 1 (𝑏 𝑤 𝑏𝑗 + ∑ 𝑤 𝑖𝑗 𝑥 𝑖𝑡 𝑛 𝑖=1 ) 𝑚 𝑗=1 } 𝑧 𝑡 (𝑗) = (𝑏 𝑤 𝑏𝑗 + ∑ 𝑤 𝑖𝑗 𝑥 𝑖𝑡 𝑛 𝑖=1
) 𝑧 1 (1) = 1 × 0,9696 + [(0,0994 × 0,6212) + (0,7383 × 0,6897)] 𝑧 1 (1) = 1,540583 𝑧 1 (2) = 1 × 0,0956 + [(0,2821 × 0,6212) + (0,1202 × 0,6897)]
𝑧 1 (2) = 0,353756 𝑧 1 (3) = 1 × 0,3879 + [(0,8342 × 0,6212) + (0,7642 × 0,6897)] 𝑧 1 (3) = 1,43323 𝑧 1 (4) = 1 × 0,7694 + [(0,7657 × 0,6212) + (0,0948 × 0,6897)] 𝑧 1 (4) = 1,310466 𝑧 1 (5) = 1 × 0,2949 + [(0,7107 × 0,6212) + (0,4631 × 0,6897)] 𝑧 1 (5) = 1,055828
𝑌 𝑡 = 𝜓 0 {𝑏 𝑤 𝑏0 + ∑ 𝑤 𝑗 𝜓 1 ( 𝑚 𝑗=1 𝑧 𝑡 (𝑗))}
𝑌 1 ′ = 0,8759 + [ 0,0942 1+exp (−1,540583) + 0,5846 1+exp (−0,353756) + 0,8208 1+exp (−1,43323) + 0,1455 1+exp (−1,310466) + 0,8669
1+exp (−1,055828) ] 𝑌 1 ′ = 2,717406
Perhitungan  tersebut dilakukan  hingga  diperoleh  nilai 𝑌 775 , kemudian  dihitung  nilai  MAE sebagai 𝑓(𝑥) sebagai berikut:
𝑀𝐴𝐸 = 1 𝑛 ∑ |𝑌 𝑡 ̂ − 𝑌 𝑡 | 𝑛 𝑡=1 𝑀𝐴𝐸 = 1 775 ∑ |𝑌 𝑡 ′ − 𝑌 𝑡 ′ | 775 𝑡=1
𝑀𝐴𝐸 = 1 775 (|2,717406 − 0,5670| + |2,6874 − 0,5251| + ⋯ + |2,8630 − 0,9971| 𝑀𝐴𝐸 = 2,0904
2. Menetapkan suhu awal
Suhu awal pada proses ASA adalah suhu buatan yang dimisalkan  sebagai suhu akhir proses pemanasan pada proses pengkristalan.  Penetapan suhu awal berfungsi  sebagai acuan dalam  menentukan  suhu  pada proses iterasi  selanjutnya  dalam  proses ASA, sampai  saat ini belum  ada ketentuan berapa suhu pada proses ASA sehingga  pada tugas akhir ini  digunakan suhu awal sebesar 100 sesuai dengan default dari program matlab.
3. Inisialisai  Bobot Baru
Inisialisasi  bobot  baru  dilakukan  pada  saat iterasi  pertama,  inisialisasi  bobot  baru bertujuan  untuk memperoleh  bobot yang lebih  optimal  dengan membangkitkan  bobot  secara random  dengan  batas  sesuai  peneliti,  sesuai  dengan  kasus  yang  diilustrasikan  maka digunakan  batas  antara  -1  dan  1.  Setelah  diperoleh  bobot  baru  selanjutnya  adalah menghitung  kembali  output  jaringan  untuk  menghitung  nilai  error baru seperti  perhitungan sebelumnya.
4. Menghitung  Suhu  Sistem
Setelah  dilakukan  penetapan  suhu  awal  sebesar  100,  pada  iterasi  yang  akan berlangsung  ke-k  dibutuhkan  variabel  suhu  pada  iterasi  tersebut  supaya  dapat  dilakuka perhitungan  peluang  penerimaan  pada tahap evaluasi  bobot.  Proses perhitungan  suhu  pada iterasi pertama diilustrasikan  sebagai berikut:
𝑇 𝑘 = 𝑇 0 ln (1+𝑘) 𝑇 1 = 100 ln (1+1) 𝑇 1 = 144,2695
5. Evaluasi  Bobot
Evaluasi  bobot  merupakan  tahap dimana  bobot  baru yang dibangkitkan  akan dipertimbangkan  apakah bobot  tersebut akan menggantikan  bobot awal yang sebelumnya digunakan  sebagai bobot  optimal.  Dalam tugas akhir  ini  proses ASA yang dilakukan bertujuan  untuk  meminimalkan  nilai  MAE dari model  jaringan  syaraf tiruan,  proses evaluasi  yang dilakukan  adalah sebagai berikut:
P [𝐸 𝑖+1 ] = 𝑚𝑖𝑛{1, 𝑒 −∆𝐸/𝑐𝑇 } 𝑒 −∆𝐸/𝑐𝑇 = 𝑒𝑥𝑝 − 𝑓(𝑥 𝑖+1 )− 𝑓(𝑥 𝑖 ) 𝑐𝑇 𝑒 −∆𝐸/𝑐𝑇 = 𝑒𝑥𝑝 − 0,881478− 2,0904 1×144,2695 𝑒 −∆𝐸/𝑐𝑇 = 𝑒𝑥𝑝 − −1,20895 144,2695 𝑒 −∆𝐸/𝑐𝑇 = 1,0084 P [𝐸 𝑖+1 ] = 𝑚𝑖𝑛{1,1,0084} P [𝐸 𝑖+1 ] = 1
Berdasarkan hasil  evaluasi  diperoleh  nilai  peluang  penerimaan  sebesar 1,  sehingga  dapat disimpulkan  bahwa  bobot  baru  yang  dibangkitkan  akan  dipakai  sebagai  bobot  optimal. Langkah langkah  sebelumnya  terus diulangi  sampai tercapai iterasi  maksimal  atau stopping criteria telah terpenuhi.
6. Proses Testing
Setelah langkah-langkah  sebelumnya terus diulangi  sampai tercapai iterasi maksimal atau  ada stopping criteria yang  terpenuhi,  akan  memberikan  hasil  bobot  optimal.  Bobot optimal  dalam proses training akan digunakan  sebagai bobot untuk melakukan  proses testing dan  pada proses testing  akan  dilakukan  proses post-processing dan dihitung  nilai  MAPE- nya. Langkah perhitungan  dalam tahap post-processing diilustrasikan  sebagai berikut: 𝑥 𝑡 ′ = ( 𝑥 𝑡 −min (𝑥) max(𝑥)−min (𝑥) )
𝑥 𝑡 ′ = ( 𝑥 𝑡 −min (𝑥) max(𝑥)−min (𝑥) ) (max(𝑥) − min (𝑥)) × 𝑥 𝑡 ′ = (𝑥 𝑡 − min (𝑥)) [(max(𝑥) − min (𝑥)) × 𝑥 𝑡 ′ ] + min (𝑥) = 𝑥 𝑡 𝑥 776 = [(71,34 − 60,52) × 0,38787] + 60,52 𝑥 776 = 64,7168
Proses perhitungan  dilanjutkan  dengan langkah  dan cara yang sama hingga  diperoleh  nilai 𝑥 861 = 70,5902 , kemudian  dilanjutkan  dengan menghitung  nilai  MAPE dengan ilustrasi perhitungan  sebagai berikut:
𝑀𝐴𝑃𝐸 = 1 𝑛 ∑ |100% × 𝑌 𝑡 ̂ −𝑌 𝑡 𝑌 𝑡 | 𝑛 𝑡=1 𝑀𝐴𝑃𝐸 = 100% 86 [| 𝑌 776 − 𝑌 776 𝑌 776 | + | 𝑌 777 − 𝑌 777 𝑌 777 | + ⋯ + | 𝑌 861 − 𝑌 861 𝑌 861 |]
𝑀𝐴𝑃𝐸 = 100% 86 [| 64,7168 − 65,86 65,86 | + | 65,4287 − 65,85 65,85 | + ⋯ + | 70,5902 − 70,66 70,66 |]
𝑀𝐴𝑃𝐸 = 2,0240 %

## 4.5 Hasil Proses Training dan Testing
Tabel 2. Seleksi  Model  Terbaik No.  Hidden  Nodes Input Batas Bobot Running  Ke-  MAPE 1 5 𝑌 𝑡−1 -3<w<3 3 1,0758 2 10 𝑌 𝑡−1 -1<w<1 2 1,2691 3 5 𝑌 𝑡−2 -3<w<3 4 1,4648 4 10 𝑌 𝑡−2 -3<w<3 2 1,6849 5 5 𝑌 𝑡−1 dan 𝑌 𝑡−2 -1<w<1 3 1,0042 6 10 𝑌 𝑡−1 dan 𝑌 𝑡−2 -1<w<1 4 1,3364
Berdasarkan  Tabel  2  dapat  disimpulkan  dari  ke-6  model,  yang  memberikan  nilai MAPE terkecil adalah pada model nomor  5 dengan arsitektur jaringan  mengunakan 𝑌 𝑡−1 dan 𝑌 𝑡−2 sebagai variabel input dengan jumlah hidden nodes sebanyak 5 dan batas bobot  antara -1 dan 1 yang diperoleh  pada running program ke-4 dengan nilai  MAPE sebesar 1,0042%.

## 4.6 Peramalan  Harga Minyak Mentah Dunia
Berikut  ini  adalah  perbandingan  hasil  antara recursive forecasting , direct forecasting, dan  data  harga  minyak terbaru  yang  disajikan pada  Tabel  12 berikut  ini:
Tabel 3. Hasil Peramalan t Langkah ke Depan Hasil Permalan Nilai Recursive Direct Aktual 1 70,49 70,49 70,97 2 70,31 72,96 72,43 3 70,18 71,06 72,10 4 70,09 71,12 73,95 5 70,04 71,57 74,44 6 70,00 71,13 74,40 7 69,97 72,88 74,20 8 69,95 72,89 75,47 9 69,94 72,46 75,18 10 69,93 72,51 76,75 MAPE 5,2200% 2,9268%
Berdasarkan Tabel  12  Metode direct forecasting memberikan  hasil  peramalan  yang  lebih baik  daripada recursive forecasting karena nilai MAPE-nya lebih kecil.

## 5. KESIMPULAN
Berdasarkan  hasil  analisis  dan  pembahasan  pada  bab  sebelumnya,  dapat  diambil beberapa kesimpulan  sebagai berikut:
1. Model  terbaik  harga minyak  mentah  dunia  yang  diperoleh  adalah  model  FFNN (2-5-1) dengan Y_(t-1) dan Y_(t-2) sebagai variabel  input  dengan jumlah  hidden nodes sebanyak 5 serta interval batas bobot  -1≤w≤1.
2. Model  Feed  Forward  Neural  Network  dengan  algoritma  Adaptive  Simulated Annealing  mampu  memberikan  hasil  pemodelan  dengan  nilai  eror  yang  kecil yaitu  dengan  nilai  MAE  sebesar 0,039  dan  mampu  memberikan  model  dengan kemampuan  peramalan yang sangat baik  dengan MAPE 1,0042%.
3. Proses  iterasi  algoritma  Adaptive  Simulated  Annealing  dengan  model  Feed Forward  Neural  Network  memberikan  hasil  yang  lebih  baik  dengan  jumlah iterasi  maksimal  sama  ketika  diberikan  batas  bobot  dengan  interval  tertentu daripada tidak  diberikan  batas bobot pada proses iterasinya.
4. Metode direct forecasting  memberikan  hasil  peramalan yang lebih  baik daripada recursive  forecasting,  karena  pada  hasil  peramalan  dengan  metode  direct forecasting menghasilkan  niali  MAPE yang lebih  kecil.
5. Hasil  peramalan  harga minyak  mentah dunia  (USD/Barrel) periode  4 Mei  2018 sampai 13 Mei 2018 dengan metode direct forecasting yaitu:  70,49;  72,96;  71,06; 71,12;  71,57;  71,13;  72,88;  72,89;  72,46;  dan 72,51.

## DAFTAR PUSTAKA
Adewole, A.P., Otubamowo,  K., & Egunjobi,  T.O. 2012. A Comparative  Study of Simulated Annealing  and Genetic  Algorithm  for Solving  the Travelling  Salesman  Problem. International Journal of Applied Information Systems (IJAIS). Vol.4, No.4. Ahmed,  A.  &  Khalid,  M.  2017.  Multi-step  Ahead  Wind  Forecast  Using  Nonlinear Autoregressive  Neural Network. Energy Procedia. Vol.134, 192-204 Cryer, J.D. & Chan, K. 2008. Time Series Analysis with Application in R . Springer. USA. Dewan Energi Nasional.  2016. Outlook Energi Indonesia 2016 . Jakarta Selatan. Doreswamy & Vastrad, C.M. 2013. Performance of Analysis  of Neural Network Models  for Oxazolines  and  Derivatives  Descriptor  Dataset. International  Journal  of Information Sciences and Techniques (IJIST). Vol.3, No.6. Fausett, L. 1994. Fundamental of Neural Network . Prentice Hall. New Jersey. Haykin,  S.  2009, Neural  Network  and  Learning  Machines .  Third  Edition.  Pearson Education.  New Jersey.
Hyndman,  R.J. & Koehler,  A.B. 2006.  Another  Look  at Measures of  Forecast Accuracy. International Journal of Forecasting, Vol.22, No.4, 679-688. Kusumadewi,  S.  2003. Artificial  Intelligent  (Teknik  dan  Aplikasinya). Graha  Ilmu. Yogyakarta.
Mousavi,  S.M.,  Mostavi,  E.S.,  & Jiao,  P. 2017.  Next  Prediction  Model  for  Daily  Solar Radiation  On Horizontal  Surface Using  a Hybrid  Neural Network  and Simulated Annealing  Method. Energy Conversion and Management. Vol. 153, 671-682. Patro,  S.G.  &  Sahu,  K.K.  (2015).  Normalization:  A  Preprocessing  Stage. IARJSET. 10.17148/IARJSET .2015.2305. Rao, S.S. 2009. Engineering Optimization: Theory and Practice . John Wiley  & Sons, Inc. Hoboken. New Jersey.
Szu,  H. 1987. Fast Simulated  Annealing. Physics Letter A. Vol.122, Issue 3-4, 157-162 Warsito,  B. 2009. Kapita Selekta Statisitka Neural Network . BP Universitas  Diponegoro. Semarang.
Wei,  W.W.S. 1994. Time  Series Analysis: Univariate and Multivariate Methods . Adison- Wesley Publishing  Company  Inc. Kanada.
Anonim.  17 Agustus 2017.  2017. HUT RI ke-72 Jadi Momentum Untuk Raih Kemerdekaan Energi .  Kementerian  Energi  dan  Sumber  Daya  Mineral  Republik  Indonesia. Diakses  25  Oktober  2017.  https://www.esdm.go.id/id/berita-unit/direktorat- jenderal-ebtke/hut-ri-ke-72-jadi-momentum-untuk-raih-kemerdekaan-energie.