BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf ·...

46
7 BAB 2 LANDASAN TEORI 2.1 Pengertian peramalan Menurut Sofjan Assauri (1984) Peramalan adalah kegiatan untuk memperkirakan apa yang akan terjadi pada masa yang akan datang. Setiap kebijakan atau pengambilan keputusan seseorang tidak akan terlepas dari usaha untuk meningkatkan kesejahteraan keberhasilan orang tersebut di masa yang akan datang. Oleh karena itu perlu dilihat dan dikaji situasi dan kondisi pada saat kebijakan tersebut dilaksanakan. Usaha melihat dan mengkaji situasi dan kondisi tersebut tidak terlepas dari kegiatan peramalan. 2.2 Kegunaan dan manfaat Peramalan Kegunaan peramalan dapat dilihat pada saat pengambilan keputusan. Setiap orang selalu dihadapkan pada masalah pengambilan keputusan. Keputusan yang baik adalah keputusan yang didasarkan atas pertimbangan apa yang akan terjadi pada waktu keputusan itu dilaksanakan, berorientasi ke depan. Apabila kurang tepat ramalan yang disusun atau yang kita buat, maka makin kurang baiklah keputusan yang kita ambil. Oleh karena itu masalah pengambilan keputusan merupakan masalah yang selalu kita hadapi. Peranan peramalan cukup penting, baik dalam penelitian, perencanaan maupun dalam pengambilan keputusan. Baik tidaknya hasil suatu penelitian dalam ekonomi atau dunia usaha, sangat ditentukan oleh ketepatan ramalan yang dibuat. Demikian

Transcript of BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf ·...

Page 1: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

7

BAB 2

LANDASAN TEORI

2.1 Pengertian peramalan

Menurut Sofjan Assauri (1984) Peramalan adalah kegiatan untuk

memperkirakan apa yang akan terjadi pada masa yang akan datang. Setiap kebijakan

atau pengambilan keputusan seseorang tidak akan terlepas dari usaha untuk

meningkatkan kesejahteraan keberhasilan orang tersebut di masa yang akan datang.

Oleh karena itu perlu dilihat dan dikaji situasi dan kondisi pada saat kebijakan

tersebut dilaksanakan. Usaha melihat dan mengkaji situasi dan kondisi tersebut

tidak terlepas dari kegiatan peramalan.

2.2 Kegunaan dan manfaat Peramalan

Kegunaan peramalan dapat dilihat pada saat pengambilan keputusan. Setiap

orang selalu dihadapkan pada masalah pengambilan keputusan. Keputusan yang

baik adalah keputusan yang didasarkan atas pertimbangan apa yang akan terjadi

pada waktu keputusan itu dilaksanakan, berorientasi ke depan. Apabila kurang tepat

ramalan yang disusun atau yang kita buat, maka makin kurang baiklah keputusan

yang kita ambil. Oleh karena itu masalah pengambilan keputusan merupakan

masalah yang selalu kita hadapi.

Peranan peramalan cukup penting, baik dalam penelitian, perencanaan maupun

dalam pengambilan keputusan. Baik tidaknya hasil suatu penelitian dalam ekonomi

atau dunia usaha, sangat ditentukan oleh ketepatan ramalan yang dibuat. Demikian

Page 2: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

8

pula, baik tidaknya keputusan dan rencana yang disusun juga sangat ditentukan oleh

ketepatan ramalan yang dibuat. Oleh karena itu, ketepatan dari ramalan tersebut

merupakan hal yang sangat penting. Walaupun demikian perlu disadari bahwa suatu

peramalan adalah tetap ramalan, di mana selalu ada unsur kesalahannya dan belum

pernah mencapai efisiensi 100 % tepat. Sehingga yang penting diperhatikan adalah

usaha untuk memperkecil kemungkinan kesalahannya tersebut. Akhirnya, baik

tidaknya suatu ramalan yang disusun sangat tergantung pada pihak-pihak yang

melakukannya, langkah-langkah peramalan yang dilakukannya, dan metode yang

dipergunakan.

2.3 Metode-metode Peramalan

Oleh karena kemampuan untuk memperkirakan kegiatan-kegiatan atau

pengambilan keputusan ini sangat ditentukan oleh tepat tidaknya peramalan yang

dilakukan atas dasar keadaan kondisi pada beberapa masa yang lalu, maka terdapat

usaha memperkembangkan teknik dan metode peramalan.

Metode peramalan sangat berguna, karena akan membantu dalam mengadakan

pendekatan analisis terhadap tingkah laku atau pola dari data yang lalu, sehingga

dapat memberikan cara pemikiran, pengerjaan dan pemecahan yang sistematis, serta

memberikan ketepatan hasil ramalan yang dibuat atau yang disusun menjadi lebih

tinggi.

Menurut Sofjan Assauri (1984), peramalan secara umum dibedakan atas

peramalan kuantitatif dan kualitatif, pada dasarnya metode peramalan kwantitatif

ini dapat dibedakan atas:

Page 3: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

9

a. Metode peramalan yang didasarkan atas penggunaan analisis pola

hubungan antara variabel yang akan diperkirakan dengan variabel waktu,

yang merupakan deret waktu, atau “Time Series”. Contohnya: metode

Smoothing, metode Box Jenkins, metode proyeksi trend dengan regresi.

b. Metode peramalan yang didasarkan atas penggunaan analisis pola

hubungan antara variabel yang akan diperkirakan dengan variabel lain

yang mempengaruhinya, yang bukan waktu, yang disebut metode

korelasi atau sebab akibat. Contohnyua: metode regresi dan korelasi,

metode ekonometri, metode input-output.

Metode yang dipergunakan sangat besar manfaatnya, apabila dikaitkan dengan

keadaan informasi atau data yang dipunyai sekarang. Apabila dari data yang lalu

diketahui adanya pola musiman, maka untuk peramalan satu tahun ke depan

sebaiknya digunakan metode varian musim. Sedangkan apabila dari data yang lalu

diketahui adanya pola hubungan antara variabel-variabel yang saling

mempengaruhi, maka sebaiknya dipergunakan metode sebab-akibat (causal) atau

korelasi (“cross section”). Dalam tulisan digunakan metode peramalan Neural

Network sebagai metodenya

2.4 Neural Network

Jaringan syaraf merupakan salah satu representasi buatan yang meniru otak

manusia, yang selalu mencoba untuk mensimulasikan proses pembelajaran pada

otak manusia tersebut. Istilah buatan disini digunakan karena jaringan syaraf ini

Page 4: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

10

diimplementasikan dengan menggunakan program komputer yang mampu

menyelesaikan sejumlah proses perhitungan selama proses pembelajaran.

2.4.1 Jaringan Syaraf Manusia

Otak manusia berisi berjuta-juta sel syaraf yang bertugas untuk memproses

informasi. Tiap-tiap sel bekerja seperti suatu prosesor sederhana. Masing-masing sel

tersebut saling berinteraksi sehingga mendukung kemampuan kerja otak manusia.

Gambar 2.1 Sel Syaraf Manusia Sumber: Artificial Intelligence, halaman 207

Gambar di atas menunjukkan susunan syaraf pada manusia. Setiap sel syaraf

(neuron) akan memiliki suatu inti sel (nukleus), inti sel ini bertugas untuk

melakukan pemrosesan informasi, informasi datang diterima oleh dendrit. Selain

menerima informasi, dendrit juga menyertai axon sebagai keluaran dari suatu

pemrosesan informasi. Informasi hasil olahan ini akan menjadi masukan bagi

Page 5: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

11

neuron lain di mana antar dendrit kedua sel tersebut dipertemukan dengan sinapsis.

Informasi yang dikirimkan antar neuron ini berupa rangsangan atau sinyal yang

dilewatkan melalui dendrit. Informasi yang datang dan diterima oleh dendrit akan

dijumlahkan dan dikirim melalui axon ke dendrit akhir yang bersentuhan dengan

dendrit dari neuron yang lain. Jika memenuhi batasan tertentu, yang dikenal dengan

nama nilai ambang (Threshold) maka informasi ini akan diterima oleh neuron lain.

Struktur hubungan antar neuron tersebut terjadi secara dinamis. Hal inilah dalam

otak manusia yang disebut memiliki kemampuan untuk belajar dengan melakukan

adaptasi.

Jumlah neuron dalam otak manusia dewasa mencapai 1011 buah dengan masing-

masing neuron saling berhubungan di mana jumlah hubungan tersebut mencapai 104

buah per neuron. Jadi jumlah koneksi untuk setiap neuron adalah 1015 buah.

Neuron-neuron tersebut dapat bekerja secara parerel (parallel processing) dengan

kecepatan yang luar biasa.

Karena otak manusia yang begitu kompleks tetapi dapat memproses dengan

cepat ditambah lagi otak mempunyai kemampuan belajar, para ahli mulai

mengaplikasikan cara kerja otak ini ke dalam mesin komputer. Diharapkan

komputer dapat bekerja dengan cepat dan memiliki kemampuan belajar juga.

Mengenai kemampuan belajar komputer, hal ini dinamakan Artificial Intelligence

atau kecerdasan buatan.

2.4.2 Jaringan Syaraf Buatan (Artificial Neural Network)

Page 6: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

12

Dimulai sejak 50 tahun yang lalu para ahli mulai mengembangkan Artificial

Intelligence atau kecerdasan buatan. Di mana sebuah mesin selain dituntut untuk

cepat melakukan perhitungan yang banyak sekaligus juga sebuah mesin dapat

berpikir, menalar, dan mengambil tindakan seperti layaknya makhluk hidup.

Dengan mengadopsi cara kerja otak manusia, maka lahirlah apa yang dinamakan

dengan jaringan syaraf buatan. Definisi Artificial Neural Network menurut berbagai

sumber:

• Menurut DARPA Neural Network Study (1988, AFCEA International Press,

halaman 60): “... a neural network is a system composed of many simple

processing elements operating in parallel whose function is determined by

network structure, connection strengths, and the processing performed at

computing elements or nodes.”

• Menurut Haykin, S. (1994), Neural Networks: A Comprehensive Foundation,

NY: Macmillan, halaman 2: “A neural network is a massively parallel

distributed processor that has a natural propensity for storing experiential

knowledge and making it available for use. It resembles the brain in two

respects:

1. Knowledge is acquired by the network through a learning process.

2. Interneuron connection strengths known as synaptic weights are used to

store the knowledge.“

Page 7: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

13

• Menurut Nigrin, A. (1993), Neural Networks for Pattern Recognition,

Cambridge, MA: The MIT Press, halaman 11: “A neural network is a circuit

composed of a very large number of simple processing elements that are

neurally based. Each element operates only on local information. Furthermore

each element operates asynchronously; thus there is no overall system clock.”

• Menurut Zurada, J.M. (1992), Introduction To Artificial Neural Systems,

Boston: PWS Publishing Company, halaman xv: “Artificial neural systems, or

neural networks, are physical cellular systems which can acquire, store, and

utilize experiential knowledge.”

Menyimpulkan dari semuanya, Artificial Neural Network atau Neural

Computing adalah model arsitektur komputer yang bekerja berdasarkan hubungan

antar system neuron dalam otak manusia yang mampu bekerja secara pararel dan

mempunyai kemampuan mengenali pola atau bentuk dan mempelajarinya melalui

penalaran.

2.4.3 Komponen Jaringan Syaraf

Ada beberapa tipe jaringan syaraf, namun demikian hampir semuanya memiliki

kemiripan komponen. Seperti halnya otak manusia, jaringan syaraf buatan juga

terdiri dari beberapa neuron, dan ada hubungan antara neuron-neuron tersebut.

Neuron-neuron tersebut akan mentransformasikan informasi yang diterima melalui

sambungan keluarnya menuju ke neuron-neuron yang lain. Pada jaringan syaraf,

Page 8: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

14

hubungan ini dikenal dengan nama bobot. Informasi tersebut disimpan pada suatu

nilai tertentu pada bobot tersebut

Gambar 2.2 Model Jaringan Syaraf Manusia Sumber: http://www.doc.ic.ac.uk/~nd/surprise_96/journal/vol4/cs11/report.html

Gambar 2.3 Struktur Neuron Jaringan Syaraf Sumber: Artificial Intelligence, halaman 210

Jika kita membandingkan gambar 2.2 dengan gambar 2.3, neuron buatan ini

sebenarnya mirip dengan sel neuron biologis. Neuron-neuron buatan tersebut

bekerja dengan cara yang sama pula dengan neuron-neuron biologis. Informasi

(disebut dengan input) akan dikirim ke neuron dengan bobot kedatangan tertentu.

Input ini akan diproses oleh suatu fungsi perambatan yang akan menjumlahkan

nilai-nilai semua bobot yang datang. Hasil penjumlahan ini kemudian akan

dibandingkan dengan suatu nilai ambang (Threshold) tertentu melalui fungsi

Page 9: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

15

aktivasi setiap neuron. Apabila input tersebut melewati suatu nilai ambang tertentu,

maka neuron tersebut akan diaktifkan. Apabila neuron tersebut diaktifkan, maka

neuron tersebut akan mengirimkan output melalui bobot-bobot outputnya ke semua

neuron yang berhubungan dengannya, demikian seterusnya.

Pada jaringan syaraf buatan, neuron-neuron akan dikumpulkan dalam lapisan-

lapisan (layer) yang disebut dengan lapisan neuron (neuron layers). Biasanya

neuron-neuron dalam satu lapisan akan dihubungkan dengan lapisan-lapisan

sebelum dan sesudahnya (kecuali lapisan input dan lapisan output). Informasi yang

diberikan pada jaringan syaraf akan dirambatkan dari lapisan ke lapisan, mulai dari

lapisan input sampai ke lapisan output melalui lapisan-lapisan yang lainnya, yang

sering dikenal dengan nama lapisan tersembunyi (hidden layer). Tergantung pada

algoritma pembelajarannya, informasi tersebut bisa dirambatkan secara maju (input

ke output) atau dirambatkan secara mundur (output ke input) pada jaringan. Contoh

gambar jaringan syaraf dengan 3 lapisan.

Gambar 2.4 Model Multilayer dengan 1 Hidden Layer Sumber: http://www.doc.ic.ac.uk/~nd/surprise_96/journal/vol4/cs11/report.html

Page 10: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

16

Gambar di atas bukanlah struktur umum jaringan syaraf. Beberapa jaringan

syaraf ada juga yang tidak memiliki lapisan tersembunyi, dan ada juga jaringan

syaraf di mana neuron-neuronnya disusun dalam bentuk matriks.

2.4.4 Model Multilayer Artificial Neural Network

Seperti telah dikemukakan sebelumnya bahwa neuron-neuron dikelompokkan

dalam lapisan-lapisan. Umumnya, neuron-neuron yang terletak pada lapisan yang

sama akan memiliki keadaan yang sama. Hal terpenting dalam menentukan keadaan

suatu neuron adalah fungsi aktivasi dan pola bobotnya. Pada setiap lapisan yang

sama, neuron-neuron akan memiliki fungsi aktivasi yang sama. Apabila neuron-

neuron dalam suatu lapisan (misalkan lapisan tersembunyi) masing-masing akan

dihubungkan dengan neuron-neuron pada lapisan yang lain (misalkan lapisan

output), maka setiap dari neuron pada lapisan tersebut (misalkan lapisan

tersembunyi) masing-masing juga harus dihubungkan dengan setiap neuron masing-

masing pada lapisan lainnya (misalkan lapisan output).

Menurut Sri Kusumadewi dalam Artificial Intelligence halaman 212, ada

beberapa arsitektur jaringan syaraf buatan, antara lain:

A. Jaringan dengan Lapisan Tunggal (Single Layer Net)

Jaringan dengan lapisan tunggal hanya memiliki satu lapisan dengan bobot-

bobot terhubung. Jaringan ini hanya menerima input kemudian secara

langsung akan mengolahnya menjadi output tanpa harus melalui lapisan

tersembunyi (gambar 2.5). Pada contoh gambar 2.5 tersebut, lapisan input

Page 11: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

17

memiliki 3 neuron yaitu X1, X2, X3 sedangkan pada lapisan output memilki 2

neuron yaitu Y1, Y2. Neuron-neuron pada kedua lapisan saling berhubungan.

Seberapa besar hubungan antara 2 neuron ditentukan oleh bobot yang

bersesuaian. Semua unit input akan dihubungkan dengan setiap unit output.

Gambar 2.5 Model Single Layer Sumber: Artificial Intelligence, halaman 212

B. Jaringan dengan Banyak Lapisan (Multilayer Net)

Jaringan dengan banyak lapisan memiliki 1 atau lebih jaringan yang terletak

diantara input dan lapisan output (memiliki 1 atau lebih lapisan tersembunyi),

seperti terlihat pada gambar 2.6. Umumnya, ada lapisan bobot-bobot yang

terletak anatara 2 lapisan yang bersebelahan. Jaringan dengan banyak lapisan

ini dapat menyelesaikan permasalahan yang lebih sulit daripada lapisan

Page 12: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

18

dengan lapisan tunggal, tentu saja dengan pembelajaran yang lebih rumit.

Namun demikian, pada bayak kasus, pembelajaran pada jaringan dengan

banyak lapisan ini lebih sukses dalam menyelesaikan masalah.

Gambar 2.6 Model Multilayer dengan 1 Hidden Layer

Sumber: Artificial Intelligence, halaman 212

2.4.5 Fungsi Aktivasi

Fungsi aktivasi adalah suatu fungsi yang mengolah input (x) dalam neuron

jaringan syaraf buatan dan menghasilkan suatu output (y) di mana nilai output ini

Page 13: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

19

akan menjadi nilai input bagi neuron lain yang akan menjadi tujuan perambatan

informasi.

Ada beberapa fungsi aktivasi yang sering digunakan dalam jaringan syaraf

tiruan, antara lain:

A. Fungsi Tangga Biner (Binary Step Function)

Fungsi tangga biner ini sering digunakan pada jaringan lapis tunggal (single

layer network) digunakan untuk mengubah input bersih (net input) yang

merupakan variable kontiniu menjadi output bernilai biner (0 atau 1)

Fungsi tangga biner dirumuskan sebagai :

0 jika x ≤ 0

y =

1 jika x > 0

Gambar 2.7 Fungsi Aktivasi: Tangga Biner (Binary Step Function)

B. Fungsi Tangga Biner (dengan Threshold)

Fungsi tangga biner dengan menggunakan nilai ambang sering juga disebut

dengan nama fungsi nilai ambang (Threshold) atau fungsi Heaviside.

Page 14: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

20

Nilai Threshold (θ) di sini menjadi garis pemisah antara daerah dengan

respon aktivasi positif dan daerah dengan respon aktivasi negatif.

Fungsi tangga biner (dengan nilai ambang θ) dirumuskan sebagai berikut:

0 jika x < θ

y =

1 jika x ≥ θ

Gambar 2.8 Fungsi Aktivasi: Tangga Biner (Threshold)

C. Fungsi Bipolar (Symmetric Hard Limit)

Fungsi bipolar hampir sama dengan fungsi tangga biner, hanya saja output

yang dihasilkan berbeda, yaitu berupa nilai 1, 0, -1 (Gambar 2.9)

Fungsi Symmetric Hard Limit dirumuskan sebagai

1 jika x > 0

y = 0 jika x = 0

-1 jika x < 0

Page 15: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

21

Gambar 2.9 Fungsi Aktivasi: Bipolar (Symmetric Hard Limit)

D. Fungsi Bipolar (dengan Threshold)

Fungsi bipolar dengan Threshold hampir sama dengan fungsi tangga biner

dengan Threshold, hanya saja output yang dihasilkan berupa 1,0,-1 (gambar

2.10)

Fungsi bipolar (dengan nilai ambang θ)

1 jika x > θ

y = 0 jika x = θ

-1 jika x < θ

Page 16: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

22

Gambar 2.10 Fungsi Aktivasi: Bipolar (Threshold)

E. Fungsi Linier (Identitas)

Fungsi linear memiliki nilai output sama dengan nilai inputnya (gambar

2.10)

y = x

Gambar 2.11 Fungsi Aktivasi: Linier (Identitas)

Page 17: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

23

F. Fungsi Saturating Linear

Fungsi ini akan bernilai 0 jika inputnya kurang dari -½ dan akan bernilai 1

jika inputnya lebih dari ½. Sedangkan jika nilai input terletak anatara -½ dan

½ maka outputnya akan bernilai sama dengan nilai input ditambah ½

(gambar 2.12)

1 jika x > 0.5

y = x + 0.5 jika -0.5 ≤ x ≤ 0.5

0 jika x < -0.5

Gambar 2.12 Fungsi Aktivasi: Saturating Linear

G. Fungsi Symmetric Saturating Linear

Fungsi ini akan bernilai -1 jika inputnya kurang dari -1, dan akan bernilai 1

jika inputnya lebih dari 1. sedangkan jika nilai input terletak antara -1 dan 1,

maka outputnya akan bernilai sama dengan nilai inputnya (gambar 2.13)

Fungsi Symmetric Saturating Linear dirumuskan sebagai

1 jika x > 1

y = x jika -1 ≤ x ≤ 1

-1 jika x < -1

Page 18: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

24

Gambar 2.13 Fungsi Aktivasi: Symetric Saturating Linear

H. Fungsi Sigmoid Biner

Fungsi ini mencakup seluruh fungsi yang berbentuk kurva S. Sebagai contoh

yang sering digunakan adalah fungsi logistik. Fungsi ini memiliki kelebihan

dalam pembelajaran sebuah neuron khususnya yang menggunakan algoritma

atau model Backpropagation. Kelebihan dalam pembelajaran ini karena

hubungan yang sederhana antara nilai fungsi pada suatu titik dengan nilai

turunannya, sehingga mengurangi biaya komputasi selama pembelajaran

dalam bentuk waktu (time) yang lebih efisien. (gambar 2.14)

Fungsi Sigmoid Biner dirumuskan sebagai :

1 y = f(x) = 1 + e –σx

Fungsi ini memiliki turunan pertama:

f’(x) = σ f(x) [1 – f(x)]

Page 19: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

25

Di mana σ merupakan parameter kecuraman yang diketahui nilainya.

Umumnya nilai σ dipilih sama dengan 1.

Gambar 2.14 Fungsi Aktivasi: Sigmoid Biner

I. Fungsi Sigmoid Bipolar

Fungsi Sigmoid Bipolar hampir sama dengan Fungsi Sigmoid Biner, hanya

saja output dari fungsi ini memiliki range antara -1 sampai 1 (gambar 2.15)

1 - e-x

y = f(x) = 1 + ex

Dengan turunan pertama f ’(x) = σ / 2 [ 1 + f(x) ][ 1 - f(x) ]

Page 20: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

26

Fungsi ini sangat dekat dengan fungsi Hyperbolic Tangent. Keduanya

memiliki range antara -1 sampai 1. untuk fungsi Hyperbolic Tangent,

dirumuskan sebagai:

ex - e-x y = f(x) =

ex + e-x

1- e-2x atau y = f(x) =

1+ e-2x

Dengan : f ’(x) = [ 1 + f(x) ][ 1 - f(x) ]

Gambar 2.15 Fungsi Aktivasi: Sigmoid Bipolar

Page 21: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

27

2.4.6 Proses Pembelajaran

Di dalam otak manusia, informasi yang dirambatkan dari satu neuron ke neuron

yang lainnya berbentuk rangsangan listrik melalui dendrit. Jika rangsangan tersebut

diterima oleh suatu neuron, maka neuron tersebut akan membangkitkan suatu

keluaran atau output ke semua neuron yang berhubungan dengannya sampai

informasi tersebut sampai ke tujuannya yaitu terjadinya suatu reaksi. Jika

rangsangan yang diterima terlalu halus atau lemah, maka output yang dibangkitkan

oleh neuron tersebut tidak akan direspon oleh neuron yang terhubung dengannya.

Tentu saja sangatlah sulit untuk memahami bagaimana otak manusia bisa belajar.

Tetapi secara sederhana, selama proses pembelajaran terjadi perubahan yang cukup

berarti pada bobot-bobot yang menghubungkan antar neuron. Apabila ada

rangsangan yang sama dengan rangsangan yang telah diterima oleh neuron, maka

neuron akan memberikan reaksi dengan cepat. Namun apabila kelak ada rangsangan

yang berbeda dengan apa yang telah diterima oleh neuron, maka neuron akan segera

beradaptasi untuk memberikan rekasi yang sesuai.

Pada jaringan syaraf buatan akan dicoba untuk mensimulasikan kemampuan

otak manusia untuk belajar. Jaringan syaraf tiruan juga tersusun atas neuron-neuron

dan dendrit. Tidak seperti model biologis, jaringan syaraf buatan memiliki struktur

yang tidak dapat diubah, dibangun oleh sejumlah neuron, dan memiliki nilai tertentu

yang menunjukkan seberapa besar koneksi antara neuron (yang dikenal dengan

nama bobot). Perubahan yang terjadi selama proses pembelajaran dalam jaringan

syaraf buatan adalah perubahan nilai bobot. Nilai bobot akan bertambah jika

informasi yang diberikan oleh neuron yang bersangkutan tersampaikan, sebaliknya

Page 22: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

28

jika informasi tidak disampaikan oleh suatu neuron ke neuron lain, maka nilai bobot

yang menghubungkan keduanya akan dikurangi. Pada saat pembelajaran dilakukan

pada input yang berbeda, maka nilai bobot akan diubah secara dinamis hingga

mencapai suatu nilai yang cukup seimbang. apabila nilai ini telah tercapai

mengindikasikan bahwa tiap-tiap input telah berhubungan dengan output yang

diharapkan.

Sri Kusumadewi dalam Artificial Intelligence halaman 221, menurut bukunya

pembelajaran dalam jaringan syaraf buatan dibagi menjadi 2, yaitu Pembelajran

Terawasi dan Pembelajaran Tak Terawasi.

A. Pembelajaran Terawasi (Supervised Learning)

Metode pembelajaran pada jaringan syaraf disebut terawasi jika output yang

diharapkan telah diketahui sebelumnya.

Contoh: andaikan kita memiliki jaringan syaraf yang akan digunakan untuk

mengenali pasangan pola, misalkan pada operasi AND

Input Target0 0 0 0 1 0 1 0 0 1 1 1

Tabel 2.1 Tabel AND

Pada proses pembelajaran, satu pola input akan diberikan ke satu neuron pada

lapisan input. Pola ini akan dirambatkan di sepanjang lapisan syaraf hingga

sampai ke neuron pada lapisan output. Lapisan output ini akan membangkitkan

pola output yang nantinya akan dicocokkan dengan pola output targetnya. Apabila

terjadi perbedaan antara pola output hasil pembelajaran dengan pola output target,

Page 23: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

29

maka di sini akan muncul error. Apabila nilai error ini masih cukup besar,

mengindikasikan bahwa masih perlu dilakukan lebih banyak pembelajaran lagi.

Berikut adalah contoh-contoh algoritma pembelajaran terawasi.

1. Hebb Rule

Hebb Rule adalah metode pembelajaran yang paling sederhana. Pada metode

ini pembelajaran dilakukan dengan cara memperbaiki nilai bobot sedemikian

rupa sehingga jika ada 2 neuron yang terhubung. Dan keduanya pada kondisi

‘hidup’ (on) pada saat yang sama, maka bobot antara keduanya dinaikkan.

Apabila data direpresentasikan secara bipolar, maka perbaikkan bobotnya

adalah:

wi (baru) = wi (lama) + xi * y

Dengan wi : bobot data input ke-i

xi : input data ke-i

y : output data

Misalkan kita gunakan pasangan vektor input s dan vektor output sebagai

pasangan vektor yang akan dilatih. Sedangkan vektor yang hendak

digunakan untuk tersting adalah vektor x.

Algoritma

0. Inisialisasi semua bobot

wij = 0; dengan i = 1, 2, 3,..., n dan j = 1, 2, 3..., m

Page 24: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

30

1. Untuk setiap pasangan input-input (s-t), lakukan langkah-langkah

sebagai berikut

a. Set input dengan nilai sama dengan vektor input:

xi = si; (i = 1, 2, 3..., n)

b. Set output dengan nilai sama dengan vektor output:

yj = tj; (j = 1, 2, 3,...., m)

c. Perbaiki bobot

wij (baru ) = wij (lama) + xi * yj

(i =1, 2, 3...., n dan j = 1, 2, 3,...., m)

Dengan catatan bias selalu 1.

2. Perceptron

Perceptron juga termasuk salah satu bentuk jaringan syaraf yang sederhana.

Perceptron biasanya digunakan untuk mengklasifikasikan suatu tipe pola

tertentu yang sering dikenal dengan pemisahan secara linier. Pada dasarnya,

perceptron pada jaringan syaraf dengan satu lapisan memiliki bobot yang

bisa diatur dan suatu nilai ambang (Threshold). Algoritma yang digunakan

oleh aturan perceptron ini akan mengatur parameter-parametrer bebasnya

melalui proses pembelajaran. Nilai Threshold (θ) pada fungsi aktivasi adalah

non negatif. Fungsi aktivasi ini dibuat sedemikian rupa sehingga terjadi

pembatasan antara daerah positif dan daerah negatif (gambar 2.16)

Page 25: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

31

Gambar 2.16 Pembatasan Linier dengan Perceptron

Garis pemisah antara daerah positif dan daerah nol memiliki pertidaksamaan

w1x1 + w2x2 + b > θ

Sedangkan garis pemisah antara daerah negatif dengan daerah nol memiliki

pertidaksamaan:

w1x1 + w2x2 + b < -θ

Misalkan kita gunakan pasangan vektor input s dan vektor output sebagai

pasangan vektor yang akan dilatih

Algoritma:

0. Insialisasi semua bobot dan bias

(untuk sederhananya set semua bobot dan bobot bias sama dengan nol)

Page 26: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

32

Set learning rate : α (0< α <1)

(untuk sederhanannya set semua dengan 1)

1. Selama kondisi berhenti bernilai false, lakukan langkah-langkah sebagai

berikut:

i. Untuk setiap pasangan pembelajaran s-t, kerjakan:

a. Set input dengan nilai sama dengan vektor input:

xi = si

b. Hitung respon untuk unit output :

y_in = b+ ∑xiwi

1, jika y_in > θ

y = 0, jika –θ ≤ y_in ≤ θ

-1, jika y_in < θ

c. Perbaiki bobot dan bias jika terjadi error:

jika y ≠ t maka:

wi (baru) = wi (lama ) + α * t * xi

b (baru) = b (lama) + α * t

jika tidak, maka :

wi (baru) = wi (lama )

b (baru) = b (lama)

ii. Tes kondisi berhenti: jika tidak terjadi perubahan bobot pada i maka

kondisi berhenti true, namun jika masih terjadi perubahan maka

kondisi berhenti false.

Algoritma di atas bisa digunakan baik untuk input biner maupun bipolar,

dengan θ tertentu, dan bias yang dapat diatur. Pada algoritma tersebut bobot-

Page 27: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

33

bobot yang diperbaiki hanyalah bobot-bobot yang berhubungan dengan input

yang aktif (xi ≠ 0) dan bobot-bobot yang tidak menghasilkan nilai y yang

benar.

3. Delta rule

Pada Delta Rule akan mengubah bobot yang menghubungkan antara

jaringan input ke unit ouput (y_in) dengan nilai target (t). Hal ini dilakukan

untuk meminimalkan error selama pelatihan pola. Delta rule untuk

memperbaiki bobot ke i (untuk setiap pola) adalah:

Δwi = α (t – y_in) * xi;

Dengan x : vektor input

y_in : input jaringan ke unit output y

y_in = ∑ xi * wi

t : target (output)

Nilai w baru diperoleh dari nilai w lama ditambah Δw,

wi = wi + Δwi

4. Backpropagation

Backpropagation merupakan algoritma pembelajaran yang terawasi dan

biasanya digunakan oleh perceptron dengan banyak lapisan untuk mengubah

bobot-bobot yang terhubung dengan neuron-neuron yang ada pada lapisan

tersembunyinya. Algoritma Backpropagation menggunakan error output

untuk mengubah nilai bobot-bobotnya dalam arah mundur (backward).

Untuk mendapatkan error ini, tahap perambatan maju (foward propagation)

harus dikerjakan terlebih dahulu. Pada saat perambatan maju, neuron-neuron

Page 28: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

34

diaktifkan dengan menggunakan fungsi aktivasi Sigmoid Biner atau fungsi

aktivasi Sigmoid Bipolar.

Arsitektur jaringan Backporpagation seperti terlihat pada gambar 2.17

Gambar 2.17 Arsitektur Jaringan Backpropagation

Laurene Fausett dalam Fundamental for Neural Network halaman 301

mengatakan bahwa proses pembelajaran dengan menggunakan fungsi

aktivasi Sigmoid Bipolar dapat memberikan hasil yang lebih cepat dari pada

proses pembelajaran menggunakan fungsi aktivasi Sigmoid Biner. Contoh

kasus dalam pembelajaran kasus XOR membutuhkan iterasi (epoch) sampai

3000 kali jika menggunakan fungsi aktivasi Sigmoid Biner, sedangkan

dengan fungsi aktivasi Sigmoid Bipolar hanya memerlukan 387 kali iterasi

(epoch).

Algoritma Backpropagation

• Insialisasi bobot (ambil bobot awal dengan nilai random yang cukup kecil)

Page 29: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

35

• Kerjakan langkah-langkah berikut selama kondisi berhenti bernilai false

Untuk tiap-tiap pasangan yang akan dilakukan pembelajaran, kerjakan:

Feedfoward:

A. Tiap-tiap unit input (Xi, i = 1,2,3,...,n) menerima sinyal xi, dan

meneruskan sinyal tersebut ke semua unit pada lapisan yang ada di

atasnya (lapisan tersembunyi)

B. Tiap-tiap unit tersembunyi (Zi, i = 1,2,3,...p) menjumlahkan sinyal-

sinyal input berbobot:

z_in j = v0j + ∑ xivij

Gunakan fungsi aktivasi untuk menghitung sinyal outputnya

zj = f(z_in j)

Dan kirimkan sinal tersebut ke semua unit di lapisan atasnya (unit-

unit output)

C. Tiap-tiap unit output (Yk = 1,2,3,...m) menjumlahkan sinyal-sinyal

input terbobot.

Y_in k = w0k + ∑ ziwjk

Gunakan fungsi aktivasi untuk menghitung sinyal outputnya

yk = f(y_in k)

Dan kirimkan sinyal tersebut ke semua unit di lapisan atasnya (unit-

unit Output)

Backpropagation

Page 30: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

36

D. Tiap-tiap unit output (Yk, k = 1,2,3,....m) menerima target pola yang

berhubungan dengan pola input pembelajaran, hitung informasi

error-nya:

δk = (tk-yk) f ’(y_in k)

Kemudian hitung koreksi bobot (yang nantinya akan digunakan

untuk memeperbaiki nilai wjk).

Δwjk = α δk zj

Hitung juga koreksi bias (yang nantinya akan digunakan untuk

memperbaiki nilai w0k).

Δw0k = α δk

Kirimkan δk ini ke unit-unit yang ada di lapisan bawahnya.

E. Tiap-tiap unit tersembuni (Zj, j = 1,2,3,...p) menjumlahkan delta

inputnya (dari unit-unit yang berada di lapisan atasnya).

Δ_in j = ∑ δkwjk

Kalikan nilai ini dengan turunan dari fungsi aktivasinya untk

menghitung informasi error:

δj = δ_inj f ’(z_in j)

Kemudian hitung koreksi bobot (yang nantinya akan digunakan unuk

memperbaiki nilai vij)

Δvjk = α δj xi

Hitung juga koreksi bias (yang nantinya akan digunakan untuk

memperbaiki nilai v0j):

v0j =α δj

Page 31: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

37

F. Tiap-tiap unit output (Yk, k = 1, 2, 3,..., m) memperbaiki bias dan

bobotnya (j = 0, 1, 2, 3..., p):

wjk (baru) = wjk (lama) + Δwjk

Tiap-tiap unit tersembunyi (Zj, j = 1, 2, 3,..., p) memperbaiki bias dan

bobotnya (i = 0, 1, 2, 3,...., n)

vij (baru) = vij (lama) + Δvij

Tes kondisi berhenti

B. Pembelajaran Tak Terawasi (Unsupervied Learning)

Pada metode pembelajaran yang tak terawasi ini tidak memerlukan target

output. Pada metode ini, tidak dapat ditentukan hasil yang seperti apakah yang

diharapkan selama proses pembelajaran. Selama proses pembelajaran, nilai

bobot disusun dalam suatu range tertentu tergantung pada nilai input yang

diberikan. Tujuan pembelajaran ini adalah mengelompokkan unit-unit yang

hampir sama dalam suatu area tertentu. Pembelajaran ini biasanya sangat cocok

untuk pengelompokan (klasifikasi) pola. Contoh dari pembelajaran tak terawasai

adalah Jaringan Kohonen.

Rumelhart, Hinton dan Williams (1986) adalah orang-orang yang memberi

kontribusi terhadap pengembangan algoritma Backpropagation pada pembelajaran

terawasi. Lalu oleh Jacobs (1988) algoritma Backpropagation dikembangkan lagi

menjadi algoritma Delta-Bar-Delta.

Page 32: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

38

2.4.7 Algoritma Delta-Bar-Delta

Delta-Bar-Delta adalah perkembangan dari Backpropagation. Perbedaan

algoritma ini, Delta-Bar-Delta memiliki nilai α (learning rate) pada masing-masing

bobotnya. Dan nilai α (learning rate) ini berubah terus pada saat training. Jika nilai

bobot memiliki kecenderungan yang sama (menaik atau menurun) selama beberapa

tahap, maka nilai α (learning rate) akan meningkat. Sebaliknya jika nilai bobot

cenderung berbeda (ada yang menaik lalu menurun) maka nilai α (learning rate)

akan menurun.

Untuk meng-update matriks bobot Delta-Bar-Delta berbeda dengan

Backprogagation, yaitu dengan menggunakan rumus:

wjk (t+1) = wjk (t) + αjk(t+1). Δk. Zj

Untuk menentukan nilai α (learning rate)menaik atau menurun, maka

dibutuhkan dulu menghitung “delta” pada setiap output unit dan hidden unit.

Untuk output unit :

Δjk = - δk. Zj

Untuk hidden unit :

Δij = - δj. Xi

Lalu menghitung nilai kombinasi dari nilai sebelumnya dan nilai saat ini, disebut

“delta bar”.

Untuk output unit :

Δjk(t) = ( 1 – β ) – Δjk(t) + β . Δjk( t – 1 )

Untuk hidden unit :

Page 33: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

39

Δij(t) = ( 1 – β ) – Δij(t) + β . Δij( t – 1 )

Nilai β ditentukan sendiri oleh user (0 < β <1)

Nilai α (learning rate) ditentukan sebagai berikut:

αjk(t) + κ untuk Δjk(t–1).Δjk(t) > 0

αjk(t+1) (1 – γ).αjk(t) untuk Δjk(t–1).Δjk(t) < 0

αjk(t) untuk lainnya

Perbandingan algoritma Backpropagation dengan Delta-Bar-Delta

(Sumber : Fausett, L (1994). Fundamentals of Neural Networks: Architectures,

Algorithms, and Applications. Prentice-Hall, New Jersey)

Simulasi ini dilakukan oleh Jacobs (1988), menggunakan 25 buah simulasi

“XOR problem” (dengan insialisasi matriks bobot yang berbeda). Menggunakan 2

buah input unit, 2 buah hidden unit, dan 1 buah input unit. “XOR problem”

memiliki input berupa angka biner, lalu output memiliki rentang nilai dari 0.1

sampai 0.9. Simulasi dikatakan berhasil jika total kuadrat error kurang dari 0.04,

dengan rata-rata iterasi lebih dari 50 kali. Dan parameter yang digunakan adalah

sebagai berikut:

α κ Γ Β

Backpropagation 0.1

Delta-Bar-Delta 0.8 0.035 0.333 0.7

Tabel 2.2 Perbandingan Backpropagation dengan Delta-Bar-Delta

Page 34: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

40

Hasil dari simulasi dapat dilihat di bawah berikut

Simulasi Sukses Rata-rata iterasi

Backpropagation 25 24 16,859.8

Delta-Bar-Delta 25 22 447.3

Tabel 2.3 Perbandingan Hasil Backpropagation dengan Delta-Bar-Delta

Walaupun tingkat keberhasilan Delta-Bar-Delta tidak seperti Backpropgataion

(hanya 22 dari 25) tetapi ketika proses selesai (sukses) akan terjadi sangat cepat

sekali.

2.4.8 Aplikasi Artificial Neural Network

2.4.8.1 Inisialisasi bobot

Penentuan nilai bobot awal dalam algoritma pembelajaran mempengaruhi kecil

atau besarnya error yang juga menentukan jumlah iterasi yang harus dilakukan.

Selain dengan cara random dalam inisialisasi bobot awal terdapat juga

inisialisasi bobot Nguyen-Widrow.

Laurene Fauset dalam bukunya (Fundamentals of Neural Network, halaman

297) mengatakan bahwa inisialisasi Nguyen-Widrow terbukti mempercepat

proses pembelajaran (iterasi). Inisialisi bobot Nguyen-Widrow dari input layer ke

hidden layer, memperhatikan jumlah input node dan hidden node dalam

menentukan nilai bobot awalnya dengan pendekatan transformasi Fourirer.

Sedangkan untuk bobot dari hidden layer ke input layer dilakukan dengan

random dengan nilai dari -0.5 sampai 0.5

Page 35: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

41

β = 0.7 (p) 1/n

Dengan n : Jumlah input unit p : Jumlah hidden unit β : Faktor skala

Algoritma Nguyen-Widrow

1. Untuk setiap hidden unit ( j =1,2,3,...., p)

2. Inisialisasi bobot vij(old) = random dari -0.5 sampai 0.5

hitung vj(old) = v1j(old)2 + v2j(old)2 +..........+ vnj(old)2

3. Inisialisai ulang bobot

vij= β * vij (old) / vj (old)

4. Untuk bobot bias

v0j = random dari – β sampai β

2.4.8.2 Menentukan Jumlah Pasang Pola

Hubungan antara jumlah pasang pola (p) dengan jumlah bobot (w) dan

keakuratan yang diharapkan (e) digambarkan dengan:

w p =

e

Contohnya, dengan e = 0.1, jaringan dengan jumlah bobot 80 akan memerlukan

800 pasangan pola pembelajaran untuk mendapatkan hasil 90 % dari testing

secara tepat.

Page 36: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

42

2.4.9 Keunggulan Artificial Neural Network

Artificial neural network mempunyai keunggulan dalam peramalan, sebab

metode ini dapat memproses data yang besar dan dapat mengetahui suatu bentuk

trend dan bentuk pola nilai yang tidak dapat dilihat pada grafik biasa atau dengan

metode statistik lain. Artificial Neural Networks juga dapat menemukan bentuk-

bentuk kompleks atau non linier pada data yang fluktuatif dan dapat mempelajari

bentuk data tersebut.

Inilah kelebihan utama metode peramalan menggunakan Artificial Neural

Network dibandingkan metode peramalan regresi. Sebab Artificial Neural Network

dapat memepelajari bentuk data sedangkan regresi harus menganalisis dulu data

tersebut untuk dicocokkan dengan pola regresi mana yang harus dipakai untuk

peramalan.

Juga dalam metode peramalan yang lain jika situasi, kondisi dan lingkungan

berubah maka metodepun berubah juga mengikuti lingkungan. Padahal sifat utama

dalam nilai mata uang adalah selalu berubah sesuai dengan situasi dan kondisi.

Dengan Artificial Neural Network perubahan lingkungan tidak menjadi penghalang

sebab Artificial Neural Network dapat di-trainning ulang setiap saat jika terdapat

data baru. Dengan beginilah metode peramalan menggunakan Artificial Neural

Network dapat dikatakan selalu up to date.

2.4.10 Penerapan Artificial Neural Network

Dikarenakan Artificial Neural Network adalah metode yang terbaik dalam

mengenal suatu pola atau trend dalam suatu data, maka Artificial Neural Network

cocok dipakai dalam peramalan atau pendugaan. Salah satu di antaranya adalah:

Page 37: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

43

peramalan mata uang atau saham, peramalan proses produksi, peramalan keinginan

konsumen, manajemen resiko dan sebagainya. Contoh-contoh lain yang lebih

spesifik dalam penggunaan Artificial Neural Network: pengenalan suara, diagnosa

penyakit hepatitis, interpretasi bahasa kanji mandarin, analisis tekstur, pengenalan

objek tiga dimensi, pengenalan pola tulisan tangan dan pengenalan wajah.

Gambar 2.18 Contoh Grafik Nilai Mata Uang GBP terhadap USD Sumber: http://finance.yahoo.com

2.5 Teori Perancangan Software

Rekayasa piranti lunak menurut Fritz Bauer (Pressman, 1992, halaman 23)

adalah penetapan dan pemakaian prinsip-prinsip rekayasa dalam rangka

mendapatkan piranti lunak yang ekonomis yaitu terpecaya dan bekerja efisien pada

mesin (komputer). Menurut Pressman (1992, halaman 24) rekayasa piranti lunak

mencakup 3 elemen yang mampu mengontrol proses pengembangan piranti lunak,

yaitu:

1) Metode-metode (Methods)

Page 38: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

44

Menyediakan cara-cara teknis untuk membangun piranti lunak.

2) Alat-alat Bantu (Tools)

Mengadakan dukungan otomatis atau semi otomaatis untuk metode-metode

sepeerti CASE (Computeer Aided Software Engineering) yang

mengkombinasikan software, hardware dan software engineering database.

3) Prosedur- prosedur (Procedure)

Merupakan pengembangan metode dan alat bantu.

Dalam perancangan software ini, digunakan metode Siklus Hidup

Pengembangan Sistem. Metode siklus hidup pengembangan sistem atau sering disebut

dengan System Development Life Cycle (SDLC) merupakan suatu tahapan – tahapan

metode untuk merancang sebuah program aplikasi perangkat lunak. Nama lain dari

metode SDLC yaitu metode waterfall. Metode ini disebut waterfall karena model dari

langkah – langkah yang dilakukan mirip dengan air terjun (bertingkat). Jadi proses yang

harus dilakukan secara bertingkat untuk menghasilkan suatu program aplikasi yang

baik.

Perancangan aplikasi perangkat lunak dengan metode SDLC dilakukan dalam 6

tahap. Tahapan – tahapan yang harus dilakukan terdiri dari perencanaan (system

engineering), analisis disain, pengkodean (coding), pengujian (testing), dan

pemeliharaan (maintenance). Berikut ini akan dijelaskan setiap tahapan dalam SDLC

tersebut yaitu :

1) Perencanaan (System Engineering)

Page 39: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

45

Perencanaan adalah suatu kegiatan untuk menentukan program aplikasi yang

akan dirancang, tempat program aplikasi akan dirancang dan dijalankan, dan

siapa yang akan merancang program aplikasi tersebut.

2) Analisis (Analysis)

Analisis adalah suatu kegiatan untuk menentukan tentang topic dari

permasalahan yang sedang dihadapi dan bagaimana cara pemecahan atau

solusi masalah tersebut.

3) Desain (Design)

Desain adalah suatu kegiatan untuk menentukan konsep dasar rancangan

dari suatu program yang akan dibuat sehingga diharapkan dengan disain

yang baik, maka para pengguna akan merasa nyaman dalam menggunakan

program aplikasi yang dirancang tersebut.

4) Pengkodean (Coding)

Pengkodean adalah suatu kegiatan yang berguna untuk

mengimplementasikan konsep dasar dari tahapan sebelumnya (desain) ke

dalam bahasa pemrograman,

5) Pengujian (Testing)

Pengujian adalah suatu kegiatan untuk mencari kelemahan dan kesalahan

yang terjadi pada program aplikasi dan kemudian memperbaiki kesalahan

atau kelemahan tersebut. Ada beberapa metode pengujian untuk menguji

fungsi – fungsi dari suatu program aplikasi. Metode tersebut adalah :

• Metode Pengujian White-Box

Page 40: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

46

Metode ini menerapkan pengujian terhadap struktur logika program dan

detail procedural. Pengujian dilakukan terhadap setiap baris kode

program untuk meyakinkan bahwa semua operasi internal bekerja sesuai

dengan spesifikasi dan semua komponen internal telah dicoba.

• Metode Pengujian Black-Box

Metode ini merupakan pengujian interface dari perangkat lunak oleh

pemakai untuk mengetahui spesifikasi dari suatu fungsi dalam program

aplikasi. Pengujian dilakukan dengan memberi input pada program

aplikasi, kemudian diproses, dan hasil keluarannya dibandingkan apakah

telah sesuai dengan kebutuhan fungsional yang diinginkan pemakai.

• Metode pengujian Gray-Box

Metode ini merupakan gabungan dari metode pengujian White-Box dan

metode pengujian Black-Box yaitu memvalidasi interface perangkat

lunak dan pemilihan beberapa logika internal.

6) Pemeliharaan (Maintenance)

Pemeliharaan adalah suatu kegiatan yang berguna untuk memastikan bahwa

program aplikasi akan berjalan dengan baik sehingga diperlukan

pemeliharaan secara berkala.

Page 41: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

47

Gambar 2.19 Gambar Alur Perancangan SDLC

2.5.1 State Transition Diagram (STD)

State Transition Diagram atau diagram transisi merupakan suatu alat perancangan

yang menggambarkan sistem untuk mempengaruhi keadaan yang dinamis

(Pressman 1992, halaman 217-234). Keadaan di sini dapat difokuskan dan

dihubungkan dalam berbagai cara untuk merepresentasikan sifat yang sekuensial

dan concurrent (bersamaan). Transisi di antara dua keadaan umumnya disebabkan

oleh suatu kondisi. Simbol-simbol yang digunakan dalam STD :

a. Modul

Berupa simbol lingkaran yang mewakilli modul yang dipanggil apabila

terjadi suatu tindakan.

Analysis

Coding

Testing

Design

Maintenance

System Engineering

Page 42: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

48

Gambar 2.20 Notasi Modul

b. State (tampilan kondisi)

Merupakan layar yang ditampilkan menurut keadaan atau atribut, untuk

memenuhi suatu tindakan pada waktu tertentu yang mewakili suatu bentuk

keberadaan atau kondisi tertentu, disimbolkan dengan gambar kotak.

Gambar 2.21 Gambar Notasi Tampilan

c. State Transition (tindakan)

Menggunakan simbol anak panah disertai keterangan tindakan yang

dilakukan.

Gambar 2.22 Gambar Notasi Tindakan

d. Kondisi dan Aksi

Kondisi bersifat mengubah state dan aksi adalah aksi yang dilakukan sistem

ketika state berubah. Kondisi dan aksi digambarkan dengan anak panah yang

menghubungkan dua keadaan yang berkatian seperti pada gambar berikut ini

:

Page 43: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

49

Kondisi

Aksi

Gambar 2.23 Gambar Notasi Kondisi Aksi

2.5.2 Spesifikasi Proses

Spesifikasi proses adalah penjelasan dari proses-proses yang terjadi di dalam sistem,

spesifikasi proses menjadi pedoman bagi pembuat program dalam membuat kode

program maupun dokumentasi. Menurut Pressman (1992, halaman 341-358) ada

banyak cara untuk membuat suatu proses antara lain dengan :

• Tabel keputusan (Decision Tables)

• Bahasa terstruktur (Pseudocode) dengan :

a. Bahasa Inggris terstruktur (Strucured English)

b. Bahasa Indonesia terstruktur

• Bagan alur (Flowchart)

• Diagram Nassi-Shneiderman (Diagram N-S)

• Bentuk narasi atau cerita (dalam bahasa Inggris atau Indonesia)

2.6 Teori Interaksi Manusia dan Komputer

Suatu software dibuat sedemikian rupa sehingga manusia yang memakainya

(user) merasa nyaman. Hal-hal yang perlu diperhatikan adalah kombinasi warna,

State 1

State 2

Page 44: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

50

letak dan kalimat juga menu-menu pada software tersebut. Juga tampilan gambar-

gambar yang berhubungan dapat menjadi nilai tambah bagi suatu porgram aplikasi.

Suatu software yang baik tentunya harus user friendly, yang dimaksud dengan

user friendly berdasarkan Shneiderman (Designing the User Interface, 1998,

halaman 15) adalah:

1. Waktu belajar tidak lama

2. Kecepatan penyajian informasi tepat

3. Tingkat kesalahan user rendah

4. Penghafalan sesudah melampaui jangka waktu

5. Kepuasan pribadi

Juga menurut Shneiderman (Designing the User Interface, 1998, halaman 74-

75) terdapat 8 hal penting yang harus diperhatikan dalam merancang software

dilihat dari segi user:

1. Konsistensi

2. User dapat menggunakan shortcut

3. Dapat memberi umpan balik yang membantu

4. Merancang dialog yang memberikan penutup

5. Mempunyai pencegahan kesalahan

6. Memungkinkan undo atau redo

7. Berusaha supaya user memegang kendali

8. Mengurangi beban ingatan jangka pendek.

Page 45: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

51

2.7 Penelitian Relevan

Apilkasi Artificial Neural Network dalam peramalan sudah pernah dilakukan

oleh suatu perusahaan bernama Alyuda (http://www.alyuda.com/neural-network-

software.htm). Setelah mencoba mencari informasi software yang dikembangkan

perusahaan ini melalui alamat web di atas, terdapatlah 6 buah aplikasi software yang

berdasarkan Artificial Neural Network, tetapi hanya satu yang relevan dengan karya

tulisan ini yaitu mengenai peramalan, software ini bernama Alyuda Neural Signal

XL.

Software Alyuda Neural Signal XL adalah software peramalan mengenai saham

menggunakan metode Neural Network dan hanya bekerja di dalam worksheet

Microsoft Excel. Software dirancang sangat user friendly bagi pemakainya dan

dijual seharga 399 US$. Pemakai tidak perlu mengetahui rumus-rumus ekonomi dan

matematika yang rumit untuk meramal, hanya tinggal memilih menu-menu yang

ada. Kegunaan software ini adalah untuk mengambil keputusan di masa yang akan

datang dalam perdagangan saham. Karena berbicara soal saham maka pilihan

keputusannya adalah: buy, sell, stop trading dan sebagainya.

Keunggulan lain dalam software ini adalah pemakai dapat mengambil data

langsung dari internet dan setelah di-trainning, dalam tampilan akan muncul

keputusan-keputusan yang harus diambil oleh pemakai. Juga dalam software ini

terdapat juga grafik lengkap untuk saham yang dimaksud. Manfaat software ini

ditujukan bagi para investor yang bermain di saham.

Kelemahan pada aplikasi Alyuda Neural Signal XL, dalam mengunakan software

ini harus juga memiliki software tambahan sebagai tempat input dan output yaitu

Page 46: BAB 2 Landasan Teori - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2006-2-01322-MTIF-Bab 2.pdf · hubungan antara variabel yang akan diperkirakan dengan variabel lain ... sejumlah

52

Microsoft Excel. Tentunya akan menjadi kesulitan bagi para user yang tidak

memiliki software Microsoft Excel tersebut. Dalam skripsi ini, penulis berusaha

untuk merancang software yang relevan dengan software Alyuda tetapi tidak

terhubung dengan Microsoft Excel, dan menggunakan menu–menu dalam bahasa

Indonesia dengan harapan software dalam skripsi ini bermanfaat bagi user yang

kurang dapat berbahasa Inggris.

Gambar 2.24 Screenshot Software Alyuda Neural Signal XL

Sumber: http://www.alyuda.com/neural-network-software.htm