bab 2 landasan teori - thesis.binus.ac.idthesis.binus.ac.id/doc/bab2/2011-2-00680-ti bab 2.pdf ·...
TRANSCRIPT
9
BAB 2
LANDASAN TEORI
2.1 Peramalan (Forecasting)
Kegiatan peramalan, disebut pula dengan prediksi, dilakukan oleh
hampir setiap orang, baik itu pelaku bisnis pejabat pemerintahan, atau orang
awam. Topik yang diprediksi pun sangat bervariasi, dari sekedar skor
pertandingan bola, tingkat hujan di sebuah daerah, penjualan suatu produk,
pemenang sebuah kegiatan pilkada, sampai tingkat inflasi atau pertumbuhan
ekonomi yang berdampak luas (Manurung, 2002).
2.1.1 Definisi Peramalan ( Forecasting )
Definisi forecasting sebenarnya beragam, berikut beberapa
definisi tentang forecasting (Santoso, 2009):
• Perkiraan munculnya sebuah kejadian masa depan, berdasarkan
data yang ada di masa lampau
• Proses menganalisis data historis dan data saat ini untuk
menentukan trend di masa mendatang
• Proses estimasi dalam situasi yang tidak diketahui
• Pernyataan yang dibuat tentang masa depan
10
• Penggunaan ilmu dan teknologi untuk memperkirakan situasi
di masa mendatang
• Upaya sistematis untuk mengantisipasi kejadian atau kondisi di
masa depan
Dari beberapa definisi diatas, dapat disimpulkan bahwa
forecasting berkaitan dengan upaya memperkirakan apa yang terjadi di
masa depan, berbasis pada metode ilmiah (ilmu dan teknologi) serta
dilakukan secara sistematis. Walaupun demikian, kegiatan forecasting
tidaklah semata-mata berdasarkan prosedur ilmiah atau terorganisir,
karena ada kegiatan forecasting yang menggunakan intuisi (perasaan)
atau lewat diskusi informal dalam sebuah group. Forecasting adalah
kegiatan yang bersifat teratur, berupaya memprediksi masa depan
dengan menggunakan tidak hanya metode ilmiah, namun juga
mempertimbangkan hal – hal yang bersifat kuantitatif, seperti
perasaan, pengalaman seseorang, dan lainnya (Santoso, 2009).
2.1.2 Tahapan Forecasting
Walaupun forecasting adalah sebuah alat yang dapat
digunakan pada departemen mana saja di sebuah perusahaan, atau
pada level mana saja pada manajemen perusahaan, namun agar hasil
forecasting dapat secara efektif menjawab masalah yang ada, kegiatan
11
forecasting sebaiknya mengikuti tahapan sebagai berikut (Santoso,
2009):
• Perumusan Masalah dan Pengumpulan Data
Tahap pertama yang sebenarnya penting dan
menentukan keberhasilan forecasting adalah menentukan
masalah tentang apa yang akan diprediksi. Formulasi masalah
yang jelas akan menuntun pada ketepatan jenis dan banyaknya
data yang akan dikumpulkan. Dapat saja masalah telah
diterapkan, namun data yang relevan tidak tersedia. Hal ini
memaksa diadakannya perumusan ulang, atau mengubah
metode forecasting.
• Persiapan Data
Setelah masalah dirumuskan dan data telah terkumpul,
tahap selanjutnya adalah menyiapkan data hingga dapat
diproses dengan benar. Hal ini diperlukan, karena dalam
praktek ada beberapa masalah berkaitan dengan data yang telah
terkumpul.
Jumlah data terlalu banyak. Pada umumnya, semakin
banyak data akan semakin valid hasil forecasting. Namun
demikian, jumlah data yang semakin banyak akan berakibat
hasil forecasting tidak dapat menjelaskan situasi sebenarnya,
12
karena time horizon dapat menjadi sangat panjang, yang
berakibat banyak data tidak relevan lagi.
Beberapa metode forecasting seperti regresi, yang
mensyaratkan jumlah data minimal terpenuhi. Pada umumnya,
jumlah data dibawah sepuluh dianggap tidak memadai untuk
kegiatan forecasting secara kuantitatif.
Data harus diproses dahulu. Sebagai contoh, saat akan
melakukan forecasting, tingkat penjualan secara agregat
(keseluruhan), data yang terkumpul ternyata data tingkat
penjualan per-area penjualan. Agar forecasting dapat
dilakukan, maka data per area penjualan tersebut harus
dijumlahkan terlebih dahulu.
• Membangun Model
Setelah data dianggap memadai dan siap dilakukan
kegiatan prediksi, proses selanjutnya adalah memilih metode
yang tepat untuk melakukan forecasting pada data tersebut.
• Implementasi Model
Setelah metode forecasting ditetapkan, maka model
dapat diterapkan pada data dan dapat dilakukan prediksi pada
data untuk beberapa periode ke depan.
13
• Evaluasi Forecasting
Hasil forecasting yang telah ada kemudian
dibandingkan dengan data aktual. Tentu saja tidak ada metode
forecasting yang dapat memprediksi data di masa depan secara
tepat, yang ada adalah ketepatan prediksi. Untuk itu,
pengukuran kesalahan forecasting dilakukan untuk melihat
apakah metode yang telah digunakan sudah memadai untuk
memprediksi sebuah data.
2.1.3 Jenis Data pada Kegiatan Forecasting
Data yang akan diprediksi secara umum dapat dibagi menjadi
dua tipe, yakni data kualitatif dan kuantitatif. Tidak semua data yang
akan digunakan untuk kegiatan prediksi harus berupa angka. Ada data
yang berupa pendapat dari manajer, saran dari ahli, masukan dari
konsumen. Data seperti itu berupa kalimat atau ringkasan pernyataan
yang tidak semuanya harus direpresentasikan dalam bentuk angka.
Tipe data lain adalah kuantitatif yakni data berupa angka. Data ini
masih dibagi dua bagian (Santoso, 2009):
• Data Time-series
Data time-series adalah data yang ditampilkan
berdasarkan waktu, seperti data bulanan, harian, mingguan,
14
atau jenis waktu lainnya. Ciri data time-series adalah adanya
rentang waktu tertentu dan bukannya data pada satu waktu
tertentu.
• Data Cross-Sectional
Data tipe ini adalah data yang tidak berdasarkan waktu
tertentu, namun pada satu waktu tertentu, untuk data cross-
section, metode yang digunakan umumnya adalah regresi, baik
itu regresi sederhana atau berganda. Namun demikian, pada
data time-series juga dapat dilakukan metode forecasting
menggunakan regresi.
• Data Stasioner dan Data Tidak Stasioner
Data stasioner adalah data dimana rata-rata nilainya
tidak berubah dari waktu ke waktu, atau dapat dikatakan
bersifat stabil. Sebaliknya, data dapat saja tidak stasioner,
ketika pada uji pola data didapati adanya trend atau pola
seasonal (pengaruh musim).
− Forecasting untuk Data Stasioner
Beberapa cara yang dapat dilakukan untuk
prediksi dengan data berpola stasioner adalah :
• Naïve Methods
• Simple Averaging Methods
15
• Moving Averages
• Autoregressive Moving Average ( ARMA )
− Forecasting untuk Data Tidak Stasioner
Data dapat berciri tidak stasioner, dalam arti
data mempunyai ciri adanya trend seasonal (pengaruh
musim) atau pengaruh siklis. Metode forecasting untuk
data yang tidak stasioner :
Data dengan adanya pola trend
Trend ditandai dengan adanya
kecenderungan arah data bergerak menaik
(growth), atau menurun (decline) pada jangka
panjang. Metode forecasting pada situasi ini
adalah metode exponential smoothing Holt,
regresi sederhana. ARIMA (metode Box-
Jenkins).
Data dengan adanya pengaruh seasonal
Seasonal ditandai dengan adanya pola
perubahan yang berulang secara otomatis dari
tahun ke tahun. Metode forecasting dengan
adanya pola seasonal adalah dekomposisi data,
eksponensial smoothing Winter dan ARIMA.
16
Data dengan adanya pengaruh siklis
Siklis adalah fluktuasi bergelombang
data yang terjadi di sekitar garis trend. Pola
siklis agak sulit diprediksi karena pola yang ada
cenderung tidak stabil. Metode forecasting yang
digunakan adalah dekomposisi data, model –
model ekonometrik, regresi berganda, dan
ARIMA.
2.1.4 Alat Ukur Kesalahan Prediksi
Menghitung kesalahan forecasting sering pula disebut dengan
menghitung ketepatan pengukuran (accurancy measures). Dalam
praktek ada beberapa alat ukur yang sering digunakan untuk
menghitung kesalahan prediksi :
• Persentase Kesalahan (Percentage Error) (Hasan, 2008)
100%
• MAPE ( Mean Absolute Percentage Error ) (Hasan, 2008)
∑ | |
17
• MAD (Mean Absolute Deviation) (Hasan, 2008)
∑ | |
• MSD/MSE (Mean Squared Deviation / Mean Squared Error)
(Hasan, 2008)
∑
Dimana :
dt = data aktual pada periode t
Dt’ = nilai ramalan pada periode t
n = banyaknya periode
Pada dasarnya, ketiga rumus diatas mengukur seberapa jauh
data hasil forecasting berbeda dengan data asli (aktualnya). Karena
ada kemungkinan selisih dua data tersebut negatif, karena data aktual
lebih besar dari data forecasting-nya, maka selisih tersebut
dimutlakkan. Sedangkan untuk rumus MSD (MSE) hal itu tidak perlu
dilakukan, karena dengan mengkuadratkan selisih keduanya, otomatis
tidak akan ada data bernilai negatif.
18
Pada pengukuran MAD, hanya dilakukan selisih data aktual
dengan data forecasting, yang kemudian dirata-rata sesuai jumlah data
yang ada. Sedangkan pengukuran MSD/MSE, selisih tersebut
dijadikan dalam bentuk presentase. Semakin kecil nilai ketiga alat
ukur tersebut, semakin baik metode forecasting yang digunakan.
2.1.5 Beberapa Sifat dari Forecasting
Dalam hal membuat peramalan atau menerapkan hasil suatu
peramalan, maka ada beberapa hal yang harus dipertimbangkan, yaitu
(Santoso, 2009):
• Peramalan pasti mengandung kesalahan, artinya peramalan hanya
bisa mengurangi ketidakpastian yang akan terjadi, tetapi tidak
dapat dihilangkan ketidakpastian tersebut.
• Peramalan seharusnya memberikan informasi tentang beberapa
ukuran kesalahan, artinya karena peramalan pasti mengandung
kesalahan maka adalah penting bagi peramal untuk
menginformasikan seberapa besar kesalahan yang mungkin terjadi.
• Peramalan jangka pendek lebih akurat dibandingkan dengan
peramalan jangka panjang. Hal ini disebabkan karena pada
peramalan jangka pendek, faktor – faktor yang mempengaruhi
permintaan relatif masih konstan, sedangkan semakin panjang
19
periode peramalan, maka semakin besar pula kemungkinan
terjadinya perubahan faktor – faktor yang mempengaruhi
permintaan.
2.1.6 Karakter Peramalan yang Baik
Peramalan yang baik mempunyai beberapa kriteria yang
penting, antara lain akurasi, biaya, dan kemudahan (Manurung, 2002).
Penjelasan dari kriteria – kriteria tersebut adalah sebagai berikut:
• AKURASI. Akurasi dari suatu hasil peramalan diukur dengan
kebiasaan dan kekonsistensian peramalan tersebut. Hasil
peramalan dikatakan bisa bila peramalan tersebut terlalu tinggi
atau terlalu rendah dibandingkan dengan kenyataan yang
sebenarnya terjadi. Hasil permalan dikatakan konsisten bila
besarnya kesalahan peramalan relatif kecil. Peramalan yang terlalu
rendah akan mengakibatkan kekurangan persediaan, sehingga
permintaan konsumen tidak dapat dipenuhi segera, akibatnya
perusahaan dimungkinkan kehilangan pelanggan dan kehilangan
keuntungan penjualan. Peramalan yang terlalu tinggi akan
mengakibatkan terjadinya penumpukan persediaan, sehingga
banyak modal yang terserap sia – sia. Keakuratan dari hasil
peramalan ini berperan penting dalam menyeimbangkan
20
persediaan yang ideal (meminimasi penumpukan persediaan dan
memaksimasi tingkat pelayanan).
• BIAYA. Biaya yang diperlukan dalam pebuatan suatu peramalan
adalah tergantung dari jumlah item yang diramalkan, lamanya
periode peramalan, dan metode peramalan yang dipakai. Ketiga
faktor pemicu biaya tersebut akan mempengaruhi berapa banyak
data yang dibutuhkan, bagaimana pengolahan datanya (manual
atau terkomputerisasi), bagaimana penyimpanan datanya dan siapa
tenaga ahli yang akan diperbantukan. Pemilihan metode peramalan
harus disesuaikan dengan dana yang tersedia dan tingkat akurasi
yang ingin didapat, misalnya item – item yang penting akan
diramalkan dengan metode yang canggih dan mahal sedangkan
item – item yang kurang penting bisa diramalkan dengan metode
sederhana dan murah.
• KEMUDAHAN. Penggunaan metode peramalan yang sederhana,
mudah dibuat, dan mudah diaplikasikan akan memberikan
keuntungan bagi perusahaan, adalah percuma memakai metode
yang berteknologi tinggi, tetapi tidak dapat diaplikasikan pada
sistem perusahaan karena keterbatasan dana, sumber daya
manusia, maupun peralatan teknologi.
21
2.2 Regresi Linear
Pada metode ini, penjualan akan disebut variabel tidak bebas
(dependent variable) dan variabel-variabel lain disebut variabel bebas
(independent variable). Model peramalan kausal kuantitatif yang paling
umum adalah analisis regresi linear (Gunawan, 2004).
Rumus regresi linear sederhana, yaitu:
y tt ba +=
( )∑ ∑−
∑ ∑ ∑−=
2t2tn
yttynb
a=−−
− tby
dimana
y = nilai peramalan
a = konstanta y
b = nilai kemiringan
n = jumlah data
t = indeks penunjuk
Peramalan kuantitatif dapat ditinjau dari dua sisi yaitu (Sulaiman, 2004):
1. Model Time Series
Model ini dipergunakan untuk memprediksikan peramalan
berdasarkan pada asumsi bahwa masa depan adalah merupakan fungsi
22
dari masa lalu. Model ini melihat pada apa yang terjadi pada periode
waktu dan menggunakan seri data pada masa lalu untuk membuat
suatu ramalan.
Terdapat lima jenis pola permintaan dalam time series, yaitu :
a. Pola horizontal (H)
Pola ini terjadi jika nilai data berfluktuasi disekitar nilai
rata-rata yang konstan. Pola ini terjadi jika suatu produk
penjualannya tidak mengalami peningkatan atau penurunan selama
suatu waktu tertentu.
b. Pola trend (T)
Pola ini berupa gerakan ke atas atau ke bawah dari sebuah
nilai secara berangsur-angsur dari data sepanjang waktu. Pola ini
terjadi apabila data permintaan menunjukkan pola gerakan
menurun atau meningkat dalam jangka panjang. Metode peramalan
yang tepat untuk pola data seperti ini adalah metode regresi linear,
exponential smoothing atau double exponential smoothing.
c. Pola musiman (S)
Pola musiman merupakan suatu pola data yang berulang
setelah periode harian, mingguan, bulanan atau kuartalan. Metode
peramalan yang tepat untuk pola data seperti ini adalah winter
(sangat sesuai), atau moving average, atau weight moving average.
d. Pola siklus (C)
23
Pola ini terjadi setiap beberapa tahun. Pola data biasanya
dihubungkan dengan siklus bisnis yang merupakan hal yang sangat
penting dalam analisis dan perencanaan bisnis jangka pendek.
Metode peramalan yang tepat untuk pola data seperti ini adalah
metode moving average, weight moving average, dan exponential
smoothing.
e. Pola variasi acak (Random)
Pola variasi ajak adalah “tanda” dalam data yang
disebabkan oleh peluang dan situasi yang tidak biasa. Variabel
acak mengikuti pola yang tidak dapat dilihat. Untuk data berpola
random, tidak ada metode peramalan yang direkomendasikan.
2. Model Kausal
Metode ini menggabungkan Regresi Linear dan model
kausal menjadi suatu model variabel atau hubungan yang bisa
mempengaruhi jumlah yang sedang diramal.
2.3 Artificial Neural Network (Jaringan Syaraf Tiruan)
Jaringan Saraf Tiruan (JST) atau Artificial Neural Network (ANN),
atau juga disebut Simulated Neural Network (SNN), atau umumnya hanya
disebut Neural Network (NN), adalah jaringan dari sekelompok unit pemroses
kecil yang dimodelkan berdasarkan jaringan saraf manusia. JST merupakan
sistem adaptif yang dapat mengubah strukturnya untuk memecahkan masalah
berda
jarin
Seca
JST d
input
salin
saraf
2.3.1
asarkan info
gan tersebut
ara sederhana
dapat diguna
t dan output
Jaringan
ng terhubung
f.
1 Sejarah
Sa
intelegen
formasi ekst
t (Cubero, 20
a, JST adalah
akan untuk m
untuk mene
Gamb
Sumber
saraf tiruan
g, yang dimo
aat ini bidan
nsi manusia,
ternal maup
001).
h sebuah ala
memodelkan
emukan pola
bar 2.1 Jaring
r: Cubero, 200
merupakan j
odelkan berd
ng kecerdasa
belum men
pun internal
at pemodelan
n hubungan y
a-pola pada d
gan Saraf Tir
1.
jaringan dar
dasar jaring
an buatan da
ngadakan p
l yang men
n data statist
yang komple
data.
ruan Sederh
ri unit pemro
an saraf (ne
alam usahan
pendekatan
ngalir mela
tik non-linea
eks antara
ana
oses kecil ya
euron) jaring
nya meniruk
dalam bent
24
lui
ar.
ang
gan
kan
tuk
25
fisiknya melainkan dari sisi yang lain. Pertama-tama diadakan studi
mengenai teori dasar mekanisme proses terjadinya intelegensi. Bidang
ini disebut ‘cognitive science’. Dari teori dasar ini dibuatlah suatu
model untuk disimulasikan pada komputer, dan dalam
perkembangannya yang lebih lanjut dikenal berbagai sistem
kecerdasan buatan yang salah satunya adalah jaringan saraf tiruan.
Dibandingkan dengan bidang ilmu yang lain, jaringan saraf tiruan
relatif masih baru. Sejumlah literatur menganggap bahwa konsep
jaringan saraf tiruan bermula pada makalah Waffen
McCulloch dan Walter Pitts pada tahun 1943. Dalam makalah tersebut
mereka mencoba untuk memformulasikan model matematis sel-
sel otak. Metode yang dikembangkan berdasarkan
sistem saraf biologi ini, merupakan suatu langkah maju dalam industri
komputer (Hermawan, 2005).
2.3.2 Pengertian Dasar
Tidak ada otak manusia yang sama, tiap otak selalu berbeda.
Beda dalam ketajaman, ukuran dan pengorganisasiannya. Salah satu
cara untuk memahami bagaimana otak bekerja adalah dengan
mengumpulkan informasi dari sebanyak mungkin scan otak manusia
dan memetakannya. Hal tersebut merupakan upaya untuk menemukan
cara kerja rata-rata otak manusia itu. Peta otak manusia diharapkan
26
dapat menjelaskan misteri mengenai bagaimana otak mengendalikan
setiap tindak tanduk manusia, mulai dari penggunaan bahasa hingga
gerakan.
Walaupun demikian kepastian cara kerja otak manusia masih
merupakan suatu misteri. Meski beberapa aspek dari prosesor yang
menakjubkan ini telah diketahui tetapi itu tidaklah banyak. Beberapa
aspek-aspek tersebut, yaitu (Jong Jek Siang, 2006):
• Tiap bagian pada otak manusia memiliki alamat, dalam
bentuk formula kimia, dan sistem saraf manusia berusaha
untuk mendapatkan alamat yang cocok untuk
setiap akson (saraf penghubung) yang dibentuk.
• Melalui pembelajaran, pengalaman dan interaksi antara
sistem maka struktur dari otak itu sendiri akan mengatur
fungsi-fungsi dari setiap bagiannya.
• Akson-akson pada daerah yang berdekatan akan
berkembang dan mempunyai bentuk fisik mirip, sehingga
terkelompok dengan arsitektur tertentu pada otak.
• Akson berdasarkan arsitekturnya bertumbuh dalam
urutan waktu, dan terhubung pada struktur otak yang
berkembang dengan urutan waktu yang sama.
27
Berdasarkan keempat aspek tersebut di atas dapat ditarik suatu
kesimpulan bahwa otak tidak seluruhnya terbentuk oleh
proses genetis. Terdapat proses lain yang ikut membentuk fungsi dari
bagian-bagian otak, yang pada akhirnya menentukan bagaimana suatu
informasi diproses oleh otak.
Elemen yang paling mendasar dari jaringan saraf adalah sel
saraf. Sel-sel saraf inilah membentuk bagian kesadaran manusia yang
meliputi beberapa kemampuan umum. Pada dasarnya sel saraf biologi
menerima masukan dari sumber yang lain dan mengkombinasikannya
dengan beberapa cara, melaksanakan suatu operasi yang non-linear
untuk mendapatkan hasil dan kemudian mengeluarkan hasil akhir
tersebut.
Dalam tubuh manusia terdapat banyak variasi tipe dasar sel
saraf, sehingga proses berpikir manusia menjadi sulit untuk direplikasi
secara elektrik. Sekalipun demikian, semua sel saraf alami mempunyai
empat komponen dasar yang sama. Keempat komponen dasar ini
diketahui berdasarkan nama biologinya yaitu, dendrit, soma, akson,
dan sinapsis. Dendrit merupakan suatu perluasan dari soma yang
menyerupai rambut dan bertindak sebagai saluran masukan. Saluran
masukan ini menerima masukan dari sel saraf lainnya melalui sinapsis.
Soma dalam hal ini kemudian memproses nilai masukan menjadi
28
sebuah output yang kemudian dikirim ke sel saraf lainnya melalui
akson dan sinapsis.
Penelitian terbaru memberikan bukti lebih lanjut bahwa sel
saraf biologi mempunyai struktur yang lebih kompleks dan lebih
canggih daripada sel saraf buatan yang kemudian dibentuk menjadi
jaringan saraf buatan yang ada sekarang ini. Ilmu biologi menyediakan
suatu pemahaman yang lebih baik tentang sel saraf sehingga
memberikan keuntungan kepada para perancang jaringan untuk dapat
terus meningkatkan sistem jaringan saraf buatan yang ada berdasarkan
pada pemahaman terhadap otak biologi.
Sel saraf-sel saraf ini terhubung satu dengan yang lainnya
melalui sinapsis. Sel saraf dapat menerima rangsangan berupa sinyal
elektrokimiawi dari sel saraf-sel saraf yang lain. Berdasarkan
rangsangan tersebut, sel saraf akan mengirimkan sinyal atau tidak
berdasarkan kondisi tertentu. Konsep dasar semacam inilah yang ingin
dicoba para ahli dalam menciptakan sel tiruan (Jong Jek Siang, 2006).
2.3.3 Definisi
Suatu jaringan saraf tiruan memproses sejumlah besar
informasi secara paralel dan terdistribusi, hal ini terinspirasi oleh
model kerja otak biologis. Beberapa definisi tentang jaringan saraf
tiruan adalah sebagai berikut di bawah ini.
29
Beberapa definisi JST, yaitu:
• "Suatu neural network (NN), adalah suatu struktur pemroses
informasi yang terdistribusi dan bekerja secara paralel, yang
terdiri atas elemen pemroses (yang memiliki memori lokal dan
beroperasi dengan informasi lokal) yang diinterkoneksi
bersama dengan alur sinyal searah yang disebut koneksi. Setiap
elemen pemroses memiliki koneksi keluaran tunggal yang
bercabang (fan out) ke sejumlah koneksi kolateral yang
diinginkan (setiap koneksi membawa sinyal yang sama dari
keluaran elemen pemroses tersebut). Keluaran dari elemen
pemroses tersebut dapat merupakan sebarang jenis persamaan
matematis yang diinginkan. Seluruh proses yang berlangsung
pada setiap elemen pemroses harus benar-benar dilakukan
secara lokal, yaitu keluaran hanya bergantung pada nilai
masukan pada saat itu yang diperoleh melalui koneksi dan nilai
yang tersimpan dalam memori lokal" (Hecht-Nielsend,1988).
• “Sebuah jaringan saraf adalah sebuah prosesor yang
terdistribusi paralel dan mempuyai kecenderungan untuk
menyimpan pengetahuan yang didapatkannya dari pengalaman
dan membuatnya tetap tersedia untuk digunakan. Hal ini
menyerupai kerja otak dalam dua hal yaitu: 1. Pengetahuan
30
diperoleh oleh jaringan melalui suatu proses belajar. 2.
Kekuatan hubungan antar sel saraf yang dikenal dengan bobot
sinapsis digunakan untuk menyimpan pengetahuan (Haykin,
1994).
• “Sistem saraf tiruan atau jaringan saraf tiruan adalah sistem
selular fisik yang dapat memperoleh, menyimpan dan
menggunakan pengetahuan yang didapatkan dari pengalaman”
(Zurada, 1992).
• Sebuah jaringan syaraf adalah sebuah sistem yang dibentuk
dari sejumlah elemen pemroses sederhana yang bekerja secara
paralel dimana fungsinya ditentukan oleh stuktur jaringan,
kekuatan hubungan, dan pengolahan dilakukan pada komputasi
elemen atau nodes (AFCEA International Press, p 60, 1988).
2.3.4 Kegunaan
Jaringan syaraf tiruan pada umumnya digunakan untuk tugas
atau pekerjaan yang kurang praktis jika dikerjakan secara manual.
Kegunaan dalam kehidupan nyata (Siang, 2006):
• Perkiraan Fungsi, atau Analisis Regresi, peramalan,
termasuk prediksi time series dan modeling.
31
• Klasifikasi, termasuk pengenalan pola dan pengenalan
urutan, serta pengambil keputusan dalam pengurutan.
• Pengolahan data, termasuk penyaringan, pengelompokan,
dan kompresi.
• Robotik
2.3.5 Struktur Jaringan Syaraf Tiruan
JST disusun oleh elemen – elemen pemroses yang berada pada
lapisan-lapisan yang berhubungan dan diberi bobot. Dengan
serangkaian inputan diluar sistem yang diberikan kepadanya jaringan
ini dapat memodifikasi bobot yang akan dihasilkannya, sehingga akan
menghasilkan output yang konsisten sesuai dengan input yang
diberikan kepadanya. Setiap elemen pemroses melaksanakan operasi
matematika yang sudah ditentukan dan menghasilkan (hanya) sebuah
harga keluaran dari satu ataupun banyak masukan.
Sebuah pemodelan neuron memiliki masukan Xp sebanyak p,
yang berasal dari sel lain atau dari inputan luar (bukan dari neuron).
Selanjutnya setiap inputan diberi pembobot Wkp. Masing – masing
inputan Xp akan dikalikan dengan pembobot Wk yang berkesesuaian.
Untuk semua hasil perkalian akan dijumlahkan sebagaimana pada
persamaan dibawah ini :
32
(1)
Sumber: Siang, 2006
Hasil persamaan tersebut akan menjadi masukan bagi
fungsi aktivasi untuk mendapatkan tingkat derajat sinyal keluaran pada
neuron, dimana terdapat bermacam-macam jenis fungsi aktivasi.
Untuk jenis fungsi sigmoid dapat dideskripsikan dengan persamaan :
(2)
Sumber: Siang, 2006
Pada umumnya sinyal fungsi aktivasi yang dikeluarkan tiap
neuron berbeda, hal ini dikarenakan berbedanya nilai bobot yang
diterima tiap neuron berbeda.
Pemodelan jaringan pada syaraf tiruan sering dikategorikan
menjadi tiga yaitu: single layer, multi layer dan competitve
layer. Namun pada pembahasan kali ini hanya akan dibahas single
layer dan multi layer, karena mengingat kaidah pelatihannya
menggunakan algoritma Backpropagation. Secara umum, tiap unit
pada lapisan (layer) yang sama atau dapat disebut neuron mempunyai
tingkah laku yang sama untuk pemrosesan sinyal data. Hanya hal
terpenting yang perlu diperhatikan adalah penentuan penggunaan jenis
fungsi aktivasi pada masing-masing unit pada lapisan tersebut dan
33
pola koneksi pembobot antar lapisan. Namun biasanya unit pada
lapisan yang sama mempunyai jenis fungsi aktivasi yang sama dan
pola koneksi pembobot yang sama pula.
Untuk pemilihan jumlah layer bukan berarti pemilihan layer
untuk neuron, namun pemilihan layer untuk penghubung jalur
pembobot antar neuron. Jadi variabel terpenting untuk pengenalan
pola adalah pembobotnya (Cubero, 2001).
• Single layer
Jaringan ini terdiri atas lapisan input dengan beberapa unit
input, satu lapis pembobot dan lapisan output yang terdiri atas
beberapa unit output dimana masing – masing unit input terkoneksi
secara penuh dengan masing-masing unit output, tetapi setiap unit
output tidak terkoneksi dengan unit input maupun unit output yang
lain. Pada jaringan ini masing-masing input unit menerima
sinyal informasi dari luar dan melalui koneksi yang ada, dilakukan
proses pembobotan untuk masing-masing sinyal yang akhirnya akan
direspon oleh masing-masing output unit. Pembobot untuk satu unit
output tidak akan berpengaruh pada unit output yang lain.
34
• Multi layer
Cara kerja dari model ini sama seperti pada jaringan lapis
tunggal. Hanya saja pada arsitekturnya terdapa tambahan beberapa
layer untuk pembobot. Jadi pada pemodelan ini terdapat tambahan
beberapa atau satu layer lagi diantara input layer dan output layer yang
sering disebut dengan lapisan tersembunyi (hidden layer). Sehingga
dengan demikian terdapat lapisan pembobot antara input layer, hidden
layer dan output layer. Kelebihan dari arsitektur jenis ini jika
dibandingkan dengan single layer ialah dapat menyelesaikan masalah
kompleks yang mungkin tidak dapat diselesaikan oleh jaringan single
layer secara sempurna. Hanya saja proses pelatihannya membutuhkan
waktu yang agak lama karena tentu saja lebih sulit untuk dilakukan.
Gambar 2.4 Jaringan Syaraf Umpan Maju dengan Dua Lapisan
Sel Hidden
Sumber: Cubero, 2001
35
2.3.6 Aplikasi Jaringan Syaraf Tiruan
Beberapa aplikasi jaringan saraf tiruan adalah sebagai berikut:
a. Pengenalan pola (Pattern Recognition)
Jaringan saraf dipakai untuk mengenali pola (misalnya: huruf,
angka, suara atau tanda tangan) yang sudah sedikit berubah. Hal ini
mirip dengan otak manusia yang masih mampu mengenali orang yang
sudah beberapa waktu tidak dijumpainya (mungkin wajah / bentuk
tubuhnya sudah sedikit berubah).
b. Signal Processing
Jaringan saraf tiruan (model ADALINE) dapat dipakai untuk
menekan noise dalam saluran telepon.
c. Peramalan
Jaringan saraf tiruan juga dapat dipakai untuk meramalkan apa
yang akan terjadi di masa yang akan datang berdasarkan pola kejadian
yang ada di masa lampau. Ini dapat dilakukan mengingat kemampuan
jaringan saraf tiruan untuk mengingat dan membuat generalisasi dari
apa yang sudah ada sebelumnya.
Di samping area-area tersebut, jaringan saraf tiruan juga
dilaporkan dapat menyelesaikan masalah dalam bidang kontrol,
kedoktreran, dan lain-lain. Meskipun banyak aplikasi menjanjikan
yang dapat dilakukan oleh jaringan saraf tiruan, namun jaringan saraf
36
tiruan juga memiliki beberapa keterbatasan umum. Pertama adalah
ketidakakuratan hasil yang diperoleh apabila menggunakan single
layer. Jaringan saraf tiruan bekerja berdasarkan pola yang terbentuk
pada inputnya.
2.3.7 Jaringan Syaraf Tiruan Backpropagation
Jaringan Syaraf Tiruan Backpropagation merupakan salah satu
model jaringan yang populer pada jaringan syaraf tiruan. Model
jaringan ini banyak digunakan untuk diaplikasikan pada penyelesaian
suatu masalah berkaitan dengan identifikasi, prediksi, pengenalan pola
dan sebagainya. Pada latihan yang berulang–ulang, algoritma ini akan
menghasilkan unjuk kerja yang lebih baik. Hal ini berarti
bahwa “bobot interkoneksi” JST semakin mendekati bobot yang
seharusnya (Hermawan, 2005). Kelebihan lain yang dimiliki JST ini
adalah kemampuannya untuk belajar (bersifat adaptif) dan kebal
terhadap adanya kesalahan (Fault Tolerance) dengan kelebihan
tersebut JST dapat mewujudkan sistem yang tahan akan kerusakan
(robust) dan konsisten bekerja dengan baik.
Metode Backpropagation ini pertama kali diperkenalkan
oleh Paul Werbos pada tahun 1974, kemudian dikemukakan kembali
oleh David Parker di tahun 1982 dan kemudian dipopulerkan
oleh Rumelhart dan McCelland pada tahun 1986.
37
Pada algoritma Backpropagation ini, arsitektur jaringan
menggunakan jaringan banyak lapis. Secara garis besar proses
pelatihan pada jaringan saraf tiruan dikenal beberapa tipe pelatihan,
yaitu Supervised Training, Unsupervised Training, Fixed-Weight Nets.
Metode pelatihan Backpropagation, dikenal dengan Generalize
Delta Rule (GDR) ini merupakan supervised training dimana untuk
tiap pola input terdapat pasangan target output untuk masing-masing
pola input. Sebenarnya adalah metode gradient descent untuk
meminimasi total square error pada keluaran hasil perhitungan
jaringan. Ide dasarnya dapat dideskripsikan dengan pola hubungan
yang sederhana yaitu : jika output memberikan hasil yang tidak sesuai
dengan target yang tidak diinginkan, maka pembobot akan dikoreksi
agar error-nya dapat diperkecil dan selanjutnya respon jaringan
diharapkan akan lebih mendekati harga yang sesuai. Pada umumnya
tujuan jaringan syaraf tiruan melakukan proses pelatihan adalah untuk
mendapatkan balancing antara kemampuan jaringan untuk
menanggapi secara benar pola-pola input pada saat pelatihan (dapat
dikatakan kemampuan mengingat) dan kemampuan untuk memberikan
penilaian yang layak dari suatu pola masukkan lain yang serupa.
Sehingga dari proses pelatihan tersebut akan dibentuk suatu harga
pembobot yang akan digunakan sebagai faktor penggali dari pola
masukkan yang lain (Hermawan, 2005).
38
Pada metode ini, terdapat tiga tahapan dalam proses pelatihan,
yaitu: proses umpan maju dari pola input pelatihan, perhitungan dan
propagasi balik dari error yang terjadi dan penyesuaian nilai bobot.
Pada tahap pelatihan ini merupakan langkah bagaimana suatu
jaringan syaraf itu berlatih, yaitu: proses umpan maju dari pola input
pelatihan, perhitungan, dan propagasi balik dari error yang terjadi dari
penyesuaian nilai pembobot.
Pada tahap pelatihan ini merupakan langkah bagaimana suatu
jaringan syaraf itu berlatih, yaitu dengan cara melakukan perubahan
bobot sambungan, baik bobot sambungan antar input layer dan hidden
layer maupun antara hidden layer dan output layer, bila terdapat lebih
dari satu hidden layer maka juga terdapat pembobot antar hidden layer
itu sendiri. Sedangkan penyelesaian masalah baru akan dilakukan jika
proses pelatihan tersebut selesai, fase tersebut adalah proses
pemakaian/testing tentunya dengan menggunakan pembobot yang
telah dihasilkan dari proses pelatihan yang telah dilakukan
(Hermawan, 2005).
2.3.7 Pelatihan Standar Backpropagation
Pelatihan Backpropagation memiliki 3 fase. Fase pertama
adalah fase maju (feed forward). Pola masukan dihitung maju mulai
dari input layer hingga output layer menggunakan fungsi aktivasi
39
yang ditentukan. Fase kedua adalah fase mundur (backpropagation).
Selisih antara keluaran jaringan dengan target yang diinginkan
merupakan kesalahan yang terjadi. Kesalahan tersebut dipropagasikan
mundur, mulai dari garis yang berhubungan langsung dengan unit-unit
di layar keluaran. Fase ketiga adalah modifikasi bobot untuk
menurunkan kesalahan yang terjadi.
Langkah—langkah dalam algoritma propagation adalah sebagai
berikut (Demuth, 2001):
Langkah 0: Inisialisasi bobot (set bobot pada nilai random
yang kecil ).
Langkah 1: Ketika pada kondisi berhenti salah, dilakukan
langkah 2 – 9.
Langkah 2: Untuk setiap pasangan pelatihan, dilakukan
langkah 3 – 8.
Fase Maju (Feed Forward)
Langkah 3: Setiap unit input (Xi, I=1, … , n) menerima
sinyal input Xi dan memancarkan sinyal ini
kepada semua unit pada lapisan diatasnya (unit
tersembunyi)
Langkah 4: Setiap unit input (Zj, j=1, … , p) menjumlahkan
sinyal input bobotnya .
40
z-inj= Voj + Xi Vij
mengaplikasikan fungsi aktivasinya untuk
menghitung sinyal output-nya,
Zj = f (z-inj)
dan mengirimkan sinyal ini ke unit pada lapisan
diatasnya ( unit output ).
Langkah 5 Setiap unit output (Yk, k=1, … ,m )
menjumlahkan sinyal input bobotnya.
y-ink= Vok + Zj Wjk
dan mengaplikasikan fungsi aktivasinya untuk
menghitung sinyal outputnya.
yk = f (y-ink)
Fase Mundur (Backpropagation)
Langkah 6: Setiap unit output (Y, k=1, … , m) menerima
pola target yang cocok untuk pola pelatihan
input menghitung informasi errornya.
k = (tk – yk) f’ (y-ink),
menghitung koreksi bobotnya (biasanya
dilakukan update Wjk di waktu kemudian )
∑=
n
i 1
∑=
n
i 1
δ
41
Wjk = k Zj
menghitung koreksi biasnya (update Wk di
waktu kemudian),
Wjk = k
dan mengirimkan ki ke unit – unit
lapisan di bawahnya.
Langkah 7: Setiap unit tersembunyi (Zj, j=1, …. ,p)
menjumlahkan delta inputnya (dari unit lapisan
diatasnya).
_inj = k Wjk
dikalikan dengan derivatif fungsi untuk
menghitung error-nya.
j = _inj f’ (z-inj)
menghitung koreksi bobotnya (update
Vij diwaktu kemudian),
Vij = j Xi
menghitung koreksi biasnya (update Voj
di waktu kemudian)
ΔVoj = j
Δ α δ
Δ α δ
δ
δ ∑=
m
k 1δ
δ δ
Δ α δ
α δ
42
Modifikasi Bobot dan Bias
Langkah 8: Setiap output (Yk, k = 1, … , m ) meng-update
bias dan bobotnya ( j = 0, … , p).
Wjk ( baru) = Wjk ( lama) + Wjk
Setiap unit tersembunyi (Zj, j=1, … , p) meng-
update bias dan bobotnya ( I =0, … ,n ) :
Vij (baru) = Vij (lama) + Vij
Langkah 9: Test kondisi berhenti.
2.3.8 Prosedur Aplikasi Pelatihan
Setelah dilatih, jaringan syaraf tiruan diaplikasikan hanya
dengan menggunakan fase umpan maju dari algoritma pelatihan.
Prosedur aplikasi adalah sebagai berikut (Demuth, 2001):
Langkah 0: Inisialisasi bobot (dari algoritma pelatihan).
Langkah 1: Untuk setiap vektor input, dilakukan langkah 2
– 4.
Langkah 2: Untuk I =1 , …., n : menetapkan unit
aktivasi input xi.
Langkah 3: Untuk j =1, …, p :
z-inj= Voj + Xi Vij
Zj = f (z-inj)
Δ
Δ
∑=
n
i 1
43
Langkah 4: Untuk k=1, … ,m :
y-ink= Vok + Zj Wjk
yk = f (y-ink)
2.4 MATLAB
2.4.1 Definisi dan Kegunaan MATLAB
MATLAB adalah sebuah bahasa dengan (high-performance)
kinerja tinggi untuk komputasi masalah teknik. MATLAB
mengintegrasikan komputasi, visualisasi, dan pemrograman dalam
suatu model yang sangat mudah untuk pakai dimana masalah-masalah
dan penyelesaiannya diekspresikan dalam notasi matematika yang
familiar. Penggunaan MATLAB meliputi bidang–bidang (Sahid,
2007):
• Matematika dan komputasi
• Pembentukan algoritma
• Akusisi data
• Pemodelan, simulasi, dan pembuatan prototipe
• Analisa data, eksplorasi, dan visualisasi
• Grafik keilmuan dan bidang rekayasa
MATLAB merupakan suatu sistem interaktif yang memiliki
elemen data dalam suatu array sehingga tidak lagi memusingkan
∑=
n
i 1
44
masalah dimensi. Hal ini memungkinkan pengguna untuk
memecahkan banyak masalah teknis yang terkait dengan komputasi,
khususnya yang berhubungan dengan matrix dan formulasi vektor,
yang mana masalah tersebut merupakan momok apabila harus
menyelesaikannya dengan menggunakan bahasa level rendah seperti
Pascall, C dan Basic. Nama MATLAB merupakan singkatan dari
Matrix Laboratory. MATLAB pada awalnya ditulis untuk
memudahkan akses perangkat lunak matrik yang telah dibentuk oleh
LINPACK dan EISPACK. Saat ini perangkat MATLAB telah
menggabung dengan LAPACK dan BLAS library, yang merupakan
satu kesatuan dari sebuah seni tersendiri dalam perangkat lunak untuk
komputasi matrix (Arhami, 2005).
Dalam lingkungan perguruan tinggi teknik, MATLAB
merupakan perangkat standar untuk memperkenalkan dan
mengembangkan penyajian materi matematika, rekayasa dan
kelimuan. Di industri, MATLAB merupakan perangkat pilihan untuk
penelitian dengan produktifitas yang tinggi, pengembangan dan
analisanya.
Fitur-fitur MATLAB sudah banyak dikembangkan, dan lebih
dikenal dengan nama toolbox. Sangat penting bagi seorang pengguna
MATLAB, toolbox mana yang mandukung untuk learn dan apply
teknologi yang sedang dipelajari. Toolbox-toolbox ini merupakan
45
kumpulan dari fungsi-fungsi MATLAB (M-files) yang telah
dikembangkan ke suatu lingkungan kerja MATLAB untuk
memecahkan masalah dalam kelas particular. Area-area yang sudah
bisa dipecahkan dengan toolbox saat ini meliputi pengolahan sinyal,
sistem kontrol, neural networks, fuzzy logic, wavelets, dan lain-lain
(Siang, 2006).
2.4.2 Kelengkapan pada Sistem MATLAB
Sebagai sebuah sistem, MATLAB tersusun dari 5 bagian utama
(Siang, 2006):
1. Development Environment
Merupakan sekumpulan perangkat dan fasilitas yang membantu
pengguna untuk menggunakan fungsi-fungsi dan file-file
MATLAB. Beberapa perangkat ini merupakan sebuah Graphical
User Interfaces (GUI). Termasuk di dalamnya adalah MATLAB
desktop dan command window, command history, sebuah editor
dan debugger, dan browsers untuk melihat help, workspace, files,
dan search path.
2. MATLAB Mathematical Function Library.
Merupakan sekumpulan algoritma komputasi mulai dari fungsi-
fungsi dasar seperti: sum, sin, cos, dan complex arithmetic, sampai
46
dengan fungsi-fungsi yang lebih kompek seperti matrix inverse,
matrix eigenvalues, bessel functions, dan fast fourier transforms.
3. MATLAB Language.
Merupakan suatu high-level matrix/array language dengan control
flow statements, functions, data structures, input/output, dan fitur-
fitur object-oriented programming. Ini memungkinkan bagi kita
untuk melakukan kedua hal baik "pemrograman dalam lingkup
sederhana" untuk mendapatkan hasil yang cepat, dan
"pemrograman dalam lingkup yang lebih besar" untuk memperoleh
hasil-hasil dan aplikasi yang komplek.
4. Graphics.
MATLAB memiliki fasilitas untuk menampilkan vector dan
matrices sebagai suatu grafik. Didalamnya melibatkan high-level
functions (fungsi-fungsi level tinggi) untuk visualisasi data dua
dimensi dan data tiga dimensi, image processing, animation, dan
presentation graphics. Ini juga melibatkan fungsi level rendah
yang memungkinkan bagi pengguna untuk membiasakan diri
untuk memunculkan grafik mulai dari bentuk yang sederhana
sampai dengan tingkatan graphical user interfaces pada aplikasi
MATLAB.
47
5. MATLAB Application Program Interface (API).
Merupakan suatu library yang memungkinkan program yang telah
ditulis dalam bahasa C dan Fortran mampu berinterakasi dengan
MATLAB. Ini melibatkan fasilitas untuk pemanggilan routines
dari MATLAB (dynamic linking), pemanggilan MATLAB sebagai
sebuah computational engine, dan untuk membaca dan menuliskan
Mat-files.