• Tidak ada hasil yang ditemukan

Perancangan Perangkat Lunak Pengenalan Pola Huruf Menggunakan Algoritma Perceptron

N/A
N/A
Protected

Academic year: 2016

Membagikan "Perancangan Perangkat Lunak Pengenalan Pola Huruf Menggunakan Algoritma Perceptron"

Copied!
48
0
0

Teks penuh

(1)

PERANCANGAN PERANGKAT LUNAK PENGENALAN POLA

HURUF MENGGUNAKAN ALGORITMA PERCEPTRON

TUGAS AKHIR

DHEA AGIE WILYA

112406078

PROGRAM STUDI D-3 TEKNIK INFORMATIKA

DEPARTEMEN MATEMATIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SUMATERA UTARA

(2)

PERANCANGAN PERANGKAT LUNAK PENGENALAN POLA

HURUF MENGGUNAKAN ALGORITMA PERCEPTRON

TUGAS AKHIR

Diajukan untuk melengkapi tugas akhir dan memenuhi syarat memperoleh gelar Ahli Madya

DHEA AGIE WILYA

112406078

PROGRAM STUDI D-3 TEKNIK INFORMATIKA

DEPARTEMEN MATEMATIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SUMATERA UTARA

(3)

PERSETUJUAN

Judul : PERANCANGAN PERANGKAT LUNAK PENGENALAN POLA HURUF

MENGGUNAKAN ALGORITMA PERCEPTRON

Kategori : TUGAS AKHIR Nama : DHEA AGIE WILYA Nomor Induk Mahasiswa : 112406078

Program Studi : DIPLOMA (D3) TEKNIK INFORMATIKA Departemen : MATEMATIKA

Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA

Disetujui di

Medan, Juli 2014

Diketahui oleh:

Program Studi D3 Teknik Informatika Pembimbing FMIPA USU

Ketua,

Dr. Elly Rosmaini, M.Si Drs. Faigiziduhu Bu’ulolo, M.Si

(4)

PERNYATAAN

PERANCANGAN PERANGKAT LUNAK PENGENALAN POLA HURUF MENGGUNAKAN ALGORITMA PERCEPTRON

TUGAS AKHIR

Saya mengakui bahwa tugas akhir ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasanyang masing-masing disebutkan sumbernya.

Medan, Juli 2014

(5)

PENGHARGAAN

Puji dan syukur penulis ucapkan atas kehadirat Allah SWT yang telah memberikan Rahmat serta Hidayah kepada kita semua, sehingga berkat Karunia-Nya penulis dapat

menyelesaikan Tugas Akhir dengan baik yang berjudul “Perancangan Perangkat Lunak Pengenalan Pola Huruf Menggunakan Algoritma Perceptron“ pada waktu yang

telah ditetapkan.

Terimakasih penulis sampaikan kepada bapak Drs. Faigiziduhu Bu’ulolo, M.Si

(6)

Halaman

1.6 Metodologi Penyusunan Tugas Akhir 3 1.7 Sistematika Penulisan Tugas Akhir 3

BAB 2 TINJAUAN PUSTAKA 5

2.1 Perangkat Lunak 5

2.2 Kecerdasan Buatan 6

2.2.1 Perbedaan Kecerdasan Buatan dan Kecerdasan Alami 8 2.3 Jaringan Saraf Tiruan 8

2.3.1 Arsitektur Jaringan Saraf Tiruan 11

2.4 Proses Pembelajar 13

2.5 Perceptron 13

2.6 Mengenal MATLAB 14

BAB 3 ANALISIS DAN PERANCANGAN 18 3.1 Analisis Jaringan Saraf Tiruan 18 3.2 Analisa Pengenalan Pola 19 3.3 Algoritma Perceptron 20

3.4 Perancangan 24

3.4.1 Flowchat 25

3.4.2 Flowchat Pengenalan Pola 28 3.5 Perancangan Perangkat Lunak 29

BAB 4 IMPLEMENTASI SISTEM 30

(7)

BAB 5 PENUTUP 38

5.1 Kesimpulan 38

5.2 Saran 38

(8)

DAFTAR GAMBAR

Halaman

(9)

DAFTAR TABEL

Halaman

(10)

BAB 1

PENDAHULUAN

1.1Latar Belakang

Banyak masalah menarik dari pengenalan pola yang dikembangan dengan jaringan

saraf antara lain pengenalan wajah, pengenalan penyakit tumor, identifikasi jenis

mobil, pengenalan tanda tangan, pengenalan pola karakter (angka atau huruf).

Pengenalan karakter berguna antara lain untuk pengenalan tulisan tangan kode pos

(handwritten zip-codes). Banyaknya variasi posisi dan gaya dari setiap penulis

merupakan masalah yang sulit.

Jaringan saraf buatan adalah salah satu metode komputasi yang meniru cara

kerja sistim saraf otak manusia. Keunggulan metode ini dibandingkan metode lain

adalah kemampuannya belajar dan memecahkan hubungan yang rumit, yang sulit

dideskripsikan antara data masukkan dan data keluaran. Hal ini dimungkinkan karena

pengetahuan yang ada pada jaringan saraf buatan tidak diprogram, tetapi dilatihan

berdasarkan informasi yang diterima.

Berbagai algoritma pelatihan jaringan saraf buatan untuk pengenalan pola telah

dikembangkan, salah satunya adalah perceptron. Perceptron merupakan salah satu

metode pembelajaran terawasi (supervise learning method) dalam jaringan saraf

buatan. Umumnya, perceptron digunakan untuk mengklarifikasikan suatu pola

(11)

Pada dasarnya, perceptron yang memiliki satu lapisan akan memiliki bobot

yang bisa diatur plus sebuah nilai ambang (theshold). Algoritma yang digunakan oleh

aturan perceptron ini akan mengatur parameter-parameter bebasnya melalui proses

pembelajaran. Perceptron dikenalkan dan dikembangkan oleh Frank Rosenblatt (1958,

1959, 1962) menunjukkan bahwa perceptron dapat mempelajari apa saja yang dapat

dipresentasikannya.

Melihat masalah yang ada penulis ingin merancang suatu perangkat lunak

dengan menggunakan algoritma percepton untuk pengenalan pola huruf, kemudian di

implementasikan ke dalam sebuah program.

1.2Rumusan Masalah

Berdasarkan latar belakang, maka yang menjadi permasalahannya yaitu,

mengimplementasikan suatu algoritma perceptron ke dalam bahasa pemrogramnan

untuk pengenalan pola huruf.

1.3Batasan Masalah

Permasalahan dibatasi dengan karakter huruf dari A, B, C,... Z. Pola disimpan dalam

bentuk gambar.jpg 50x50 pixel, Menggunakan font penulisan Times New Roman.

1.4Tujuan Penelitian

Tujuan penelitian yaitu, merancang perangkat lunak untuk pengenalan karakter huruf,

(12)

1.5Manfaat Penelitian

Manfaat penelitian penulis adalah:

1. Dapat lebih memahami cara kerja tentang pengenalan pola huruf dengan

menggunakan algoritma perceptron.

2. Dapat digunakan sebagai referensi untuk penelitian lanjutan tentang pengenalan

pola huruf dengan menggunakan algoritma perceptron.

1.6Metodologi Penyusunan Tugas Akhir

Yang digunakan dalam penyusunan tugas akhir ini adalah:

1. Tinjauan pustaka, mempelajari buku, artikel, dan situs yang terkait dengan bentuk

dan proses perancangan perangkat lunak.

2. Implementasi, pembuatan perangkat lunak yang sedang dikerjakan.

3. Penulisan tugas akhir, dimulai dari pembuatan proposal sampai dengan pembuatan

kesimpulan dari implementasi perangkat lunak yang telah dilakukan.

1.7Sistematika Penulisan

Penulisan tugas akhir ini terdiri dari 5 bab yaitu sebagai berikut:

BAB 1 Pendahuluan

Bab Pendahuluan berisikan latar belakang pemilihan judul, rumusan

masalah, batasan masalah, tujuan penyusunan tugas akhir, manfaat

penyusunan tugas akhir, metodologi penelitian, dan sistematika

(13)

BAB 2 Tinjauan Pustaka

Pada bab Tinjauan Pustaka berisikan beberapa teori berasal dari

referensi yang mendasari dan berhubungan dengan perancangan

perangkat lunak pengenalan pola huruf dengan menggunakan algoritma

perceptron.

BAB 3 Analisis dan Perancangan

Pada bab Analisis dan Perancangan diuraikan deskripsi dan desain

perangkat lunak yang sedang dikembangkan. Desain perangkat lunak

meliputi Flowchart.

BAB 4 Implementasi Sistem

Pada bab Implementasi Sistim terhadap software yang telah diterapkan

dalam proses pembuatan perangkat lunak, juga berisi bagaimana

mengimplementasikan aplikasi perangkat lunak yang sudah dibangun

dengan menguraikan persiapan teknis sebelum menguji aplikasi serta

menampilkan hasil akhir dari aplikasi perangkat lunak.

BAB 5 Kesimpulan dan Saran

(14)

BAB 2

TINJAUAN PUSTAKA

2.1Perangkat Lunak

Perangkat lunak pada dasarnya berperan ganda. Perangkat lunak merupakan suatu

produk dan merupakan wahana untuk mengantarkan suatu produk. Sebagai suatu

produk, perangkat lunak menghantarkan suatu potensi yang dibentuk oleh perangkat

keras komputer atau lebih luas lagi menghantarkan potensi yang dibentuk komputer

yang dapat diakses oleh perangkat keras yang bersifat lokal. Perangkat lunak

merupakan pelaksana transformasi membuat, mengatur, memperoleh, mengubah,

menampilkan, dan mengirimkan informasi yang sekecil ukuran 1 bit atau sebesar dan

sekompleks ukuran materi presentasi multimedia yang berasal dari lusinan sumber

data. Suatu deskripsi tentang perangkat lunak menjabarkan beberapa definisi seperti:

1. Intruksi-intruksi (program komputer) yang ketika dijalankan menyediakan

fitur, fungsi, dan kinerja yang dikehendaki.

2. Struktur data yag memungkinkan program-program memanipulasi informasi.

3. Informasi deskriptif pada salinan tercetak dan berbentuk maya yang

menggambarkan pengoperasian dan penggunaan program-program (Roger S.

Pressman, 2012).

Perangkat lunak memiliki karakteristik yang berbeda dari karakteristik yang dimiliki

perangkat keras:

1. Perangkat lunak atau dikembangkan atau direkayasa, bukan diproduksi

(15)

2. perangkat lunak tidak mengalami kelelahan.

3. Perangkat lunak masi buat berdasarkan spesifikasi yang yang diminta para

user.

Perangkat lunak kercerdasan buatan yaitu menggunakan algoritma

non-numerik untuk memecahkan permasalahan-permasalahan rumit yang tidak bisa

diselesaikan dengan komputasi atau analisis permasalahan secara langsung.

Aplikasi-aplikasi yang berada dalam kategori ini menyertakan di dalam robotika, sistim pakar,

pengenalan pola (gambar dan suara), jaringan saraf tiruan, pembuktian

teorema-teorema, dan permainan (game) komputer (Roger S. Pressman, 2012).

2.2Kecedasan Buatan

Alan Turing, seorang pionir AI dan ahli matematika Inggris melakukan percobaan

pada tahun 1950 yang dinamakan Turing Test. Turing (Turing Test) yaitu sebuah

komputer melalui terminalnya ditempatkan pada jarak jauh. Di ujung yang satu ada

terminal dengan software AI dan diujung lain ada sebuah terminal dengan seorang

operator. Operator tidak mengetahui kalau di ujung terminal lain dipasang software

AI. Mereka berkomunikasi dimana terminal di ujung memberikan respon terhadap

serangkaian pertanyaan yang diajukan oleh operator. Turing beranggapan bahwa jika

mesin dapat membuat seseorang percaya, bahwa mampu berkomunikasi dengan orang

lain, maka dapat dikatakan bahwa mesin tersebut cerdas (Muhammad Dahria, 2008).

Kecerdasan Buatan (Artificial Intelligence) merupakan salah satu bagian dari

(16)

melakukan pekerjaan seperti dan sebaik yang dilakukan oleh manusia bahkan bisa

lebih baik dari pada yang dilakukan manusia. Manusia cerdas (pandai) dalam

menyelesaikan permasalahan karena manusia mempunyai pengetahuan dan

pengalaman. Pengetahuan diperoleh dari belajar, semakin banyak bekal pengetahuan

yang dimiliki tentu akan lebih mampu menyelesaikan permasalahan. Tapi bekal

pengetahuan saja tidak cukup, manusia juga diberi akal untuk melakukan penalaran,

mengambil kesimpulan berdasarkan pengetahuan dan pengalaman yang dimiliki.

Tanpa memiliki kemampuan untuk menalar dengan baik, manusia dengan segudang

pengalaman dan pengetahuan tidak akan dapat menyelesaikan masalah dengan baik.

Demikian juga dengan kemampuan penalaran yang sangat baik, namun tanpa bekal

pengetahuan dan pengalaman yang memadai, manusia juga tidak akan bisa

menyelesaikan masalah dengan baik.

Demikian juga agar mesin bisa cerdas (bertindak seperti dan sebaik manusia)

maka harus diberi bekal pengetahuan, sehingga mempunyai kemampuan untuk

menalar. Untuk membuat aplikasi kecerdasan buatan ada 2 bagian utama yang sangat

dibutuhkan:

1. Basis Pengetahuan (Knowledge Base), bersifat fakta-fakta, teori, pemikiran

dan hubungan antar satu dengan yang lainnya.

2. Motor Inferensi (Inference Engine), kemampuan menarik kesimpulan

(17)

2.2.1Perbedaan Kecerdasan Buatan dan Kecerdasan Alami

Ada beberapa keuntungan kecerdasan buatan dibandingkan kecerdasan alamiah, yaitu:

1. Lebih permanen.

2. Memberikan kemudahan dalam duplikasi dan penyebaran.

3. Relatif lebih murah dari kecerdasan alamiah.

4. Konsisten dan teliti.

5. Dapat didokumentasi.

6. Dapat mengerjakan beberapa task dengan lebih cepat dan lebih baik dibanding

manusia.

Keuntungan kecerdasan alamiah dibandingkan kecerdasan buatan:

1. Bersifat lebih kreatif.

2. Dapat melakukan proses pembelajaran secara langsung, sementara AI harus

mendapatkan masukan berupa simbol dan representasi.

3. Fokus yang luas sebagai referensi untuk pengambilan keputusan, sebaliknya

AI menggunakan fokus yang sempit (Anita Desiani dan Muhammad Arhami,

2006).

2.3Jaringan Saraf tiruan

Dalam beberapa dekade, ilmu pengetahuan dan teknologi mempunyai tujuan

mengembangkan mesin cerdas dengan sejumlah elemen sederhana. Selama tahun

1940, para peneliti yang ingin menduplikasikan otak manusia, telah mengembangkan

model neuron biologis dan sistim interaksi dalam perangkat keras sederhana. Pada

(18)

biologis dan psikologis untuk menghasilkan jaringan saraf tiruan (JST) pertama kali

(Lanny W. Pandjaitan, 2007).

Jaringan saraf tiruan didefinisikan sebagai suatu sistim pemrosesan informasi

yang mempunyai karakteristik menyerupai jaringan saraf manusia. Jaringan saraf

tiruan tercipta sebagai suatu generalisasi model matematis dari pemahaman manusia

(Andry, 2004). Jaringan saraf tiruan adalah sistim proses informasi yang memiliki

karakteristik mirip dengan jaringan saraf biologi (Siang, 2005). Jaringan saraf tiruan

merupakan sistim komputasi yang didasarkan atas pemodelan sistim saraf biologis

(neuron) melalui pendekatan dari sifat-sifat komputasi biologis (biological

computation) (Sekarwati ,2004).

Secara prinsip, jaringan saraf tiruan dapat melakukan komputasi terhadap

semua fungsi yang dapat dihitung (computable function). Jaringan saraf tiruan dapat

melakukan apa yang dapat dilakukan oleh komputer digital normal.

Dalam praktiknya, jaringan saraf tiruan sangat berguna bagi klasifikasi dan

permasalahan-permasalahan yang dapat menolerir ketidaktepatan, yang memiliki

banyak data pelatihan, namun memiliki aturan-aturan yang tidak dapat di aplikasikan

secara mudah.

Pembangunan sistim AI yang di dasarkan pendekatan jaringan saraf tiruan secara

umum meliputi langkah-langkah berikut ini (Limin Fu, 1994):

1. Memilih model jaringan saraf tiruan yang sesuai didasarkan pada sifat dasar

(19)

2. Membangun jaringan saraf tiruan sesuai dengan karakteristik domain

aplikasinya.

3. melatih jaringan saraf tiruan dengan prosedur pembelajaran dari model yang

dipilih.

4. Mengunakan jaringan yang telah dilatih sebagai pembuatan inferensi atau

pemecahan masalah. Jika hasilnya tidak memuaskan maka kembali ke langkah

sebelumnya.

Ada beberapa ciri jaringan saraf tiruan yang diilhami dari jaringan saraf biologis,

yaitu:

1. Pemrosesan informasi bersifat lokal.

2. memori terbagi atas LTM (Long Time Memory) yang merupakan bobot

keterhubungan dan STM (Short Term Memory) yang dihubungkan neuron ke

sinyal yang dijalankan.

3. Tegangan pembobotan dapat berubah menurut pengalaman.

4. Neurontrasmitter dari synaptic dapat bersifat penyalaan (exitatory) atau

pemadaman (inhibitory).

Jaringan saraf tiruan digunakan untuk menyelesaikan permasalahan di mana

formulasi lengkapnya tidak diketahui seperti tidak ada model representasi

matematikanya. Jaringan saraf tiruan memiliki kemampuan untuk dapat melakukan

pembelajaran dan pendeteksian terhadap sesuatu objek. Keuntungan penggunaan

Jaringan saraf tiruan :

(20)

2. Mempermudah pemetaan input menjadi suatu hasil tanpa mengetahui proses

sebenarnya.

3. Mampu melakukan pengadaptasian terhadap pengenalan suatu objek.

4. Perangkat yang memiliki toleransi terhadap suatu kesalahan dalam pengenalan

objek.

5. Jaringan saraf tiruan mampu diimplementasikan pada suatu Hardware.

Perangkat yang mampu diimplementasikan secara parallel.

2.3.1 Arsitektur Jaringan Saraf Tiruan

Arsitektur jaringan saraf tiruan terdiri beberapa lapisan, yaitu lapisan masukan (input

layer), lapisan tersembunyi (hidden layer), dan lapisan keluaran (output layer).

Masing-masing lapisan mempunyai jumlah node atau neuron yang berbeda-beda.

1. Lapisan masukan (input layer)

Merupakan lapisan yang terdiri dari beberapa neuron yang akan menerima

sinyal dari luar dan kemudian meneruskan ke neuron-neuron lain dalam

jaringan. berdasarkan ciri-ciri dan cara kerja sel-sel saraf sensori pada jaringan

saraf biologis.

2. Lapisan tersembunyi (hidden layer)

Merupakan tiruan dari sel-sel saraf konektor pada jaringan saraf biologis.

lapisan tersembunyi berfungsi meningkatkan kemampuan jaringan dalam

memecahkan masalah. Konsekuensi dari adanya lapisan ini adalah pelatihan

(21)

3. Lapisan keluaran (output layer)

Berfungsi menyalurkan sinyal-sinyal keluaran hasil dari pemrosesan jaringan.

Lapisan keluaran juga terdiri dari sejumlah neuron. Lapisan keluaran

merupakan tiruan sel-sel saraf motor pada jaringan saraf biologis (Siggit

Pamungkas, 2003).

Beberapa arsitektur jaringan yang sering dipakai dalam jaringan saraf tiruan, antara

lain:

a. Jaringan dengan lapisan tunggal (Single layer network)

Jaringan dengan lapisan tunggal hanya memiliki satu lapisan dengan bobot

terhubung. Jaringan ini hanya menerima input kemudian secara langsung akan

mengelolahnya menjadi output tanpa harus melalui lapisan tersembunyi.

b. Jaringan dengan banyak lapisan (Multilayer net)

Jaringan dengan banyak lapisan memiliki 1 atau lebih lapisan yang terletak di

antara lapisan input dan lapisan output (memiliki 1 atau lebih lapisan

tersembunyi).

c. Jaringan dengan lapisan kompetitif (competitive layer net)

Hubungan antar neuron pada lapisan kompetitif ini tidak diperlihatkan pada

(22)

2.4Proses Pembelajaran

Ada 2 jenis proses pembelajaran, yaitu:

1. Pembelajaran terawasi (supervised learning)

Metode pembelajaran pada jaringan saraf disebut terawasi jika output yang

diharapkan telah diketahui sebelumnya.

2. Pembelajaran tidak terawasi (Unsupervised learning)

Pada metode pembelajaran tak terawasi tidak memerlukan target output.

Selama proses pembelajaran, nilai bobot disusun dalam satu range tertentu

tergantung pada nilai input yang diberikan.

2.5 Perceptron

Tahun 1940-an, para ilmuan menemukan bahwa psikologi otak sama dengan model

pemrosesan yang dilakukan oleh komputer. Tahun 1943, McCullochdan Pitts

merancang model formal yang pertama kali sebagai perhitungan dasar neuron. Tahun

1954, Farleydan Clark mensetup model-model untuk relasi adaptif stimulus-respon

dalam jaringan random. Tahun 1958, Rosenblatt mengembangkan konsep dasar

tentang perception untuk klasifikasi pola. Tahun 1960, Widrowdan Hoff

mengembangkan ADALINE yang dilatih dengan pembelajaran Least Mean Square

(LMS). Tahun 1974, Werbos memperkenalkan algoritma backpropagation. Tahun

1975, Littledan Shaw menggambarkan jaringan saraf dengan probabilistik. Tahun

1982, Kohonen mengembangkan metode pembelajaran jaringan saraf yang tidak

terawasi untuk pemetaan. Tahun 1982, Grossberg mengembangkan teori jaringan.

(23)

algoritma pembelajaran dengan mensin Boltzmann. Tahun 1987, Kosko

mengembangkan jaringan Adaptive Bidirectional Associative Memory (BAM). Tahun

1988, dikembangkan fungsi radial bebas.

Perceptron terdiri dari suatu input dan output. Perceptron merupakan bentuk

paling sederhana dari jaringan saraf tiruan yang biasanya digunakan untuk

pengklasifikasian jenis pola khusus yang biasa disebut linearly separable (pola-pola

yang terletak pada sisi yang berlawanan pada suatu bidang). Fungsi aktivasi yang

digunakan algoritma perceptron adalah fungsi hard limiting. Output unit akan

diasumsikan bernilai 1 jika jumlah bobot inputnya lebih besar dari pada threshold.

Nilai threshold pada fungsi aktivasi adalah non-negatif (Siggit Pamungkas, 2003).

2.6 Mengenal MATLAB

Ketika MATLAB pertama kali dibuka, maka akan muncul tampilan dialog seperti

Gambar 2.1.

Gambar 2.1 Tampilan Awal MATLAB

MATLAB adalah sebuah bahasa dengan kinerja tinggi untuk komputasi masalah

teknik. MATLAB mengintegrasikan komputasi, visualisasi, dan pemrograman dalam

(24)

penyelesaiannya diekspresikan dalam notasi matematika yang familiar. Penggunaan

Matlab meliputi:

a) Matematika dan komputasi.

b) Pembentukan algoritma.

c) Akusisi data.

d) Pemodelan, simulasi, dan pembuatan prototyp.

e) Analisa data, explorasi, dan visualisas.

f) Grafik keilmuan dan bidang rekayasa.

MATLAB merupakan singkatan dari matrix laboratory. Dalam lingkungan

perguruan tinggi teknik, Matlab merupakan perangkat standar untuk memperkenalkan

dan mengembangkan penyajian materi matematika, rekayasa dan keilmuan. 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

technology yang sedang dipelajarinya. Toolbox ini merupakan 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, sistim kontrol,

neural networks, fuzzy logic, wavelets, dan lain-lain. Sebagai sebuah sistim,

MATLAB tersusun dari 5 bagian utama:

1. Development Environment, merupakan sekumpulan perangkat dan fasilitas

(25)

Beberapa perangkat ini merupakan sebuah Graphical User Interfaces (GUI).

Termasuk didalamnya adalah MATLAB desktop dan Command Window,

Command History, sebuah editor dan debugger, dan browsers untuk melihat

help, workspace, files, dan search path. Dapat dilihat pada Gambar 2.2.

Gambar 2.2 Halaman Command Window

2. MATLAB Mathematical Function Library, merupakan sekumpulan algoritma

komputasi mulai dari fungsi-fungsi dasar sepertri: sum, sin, cos, dan complex

arithmetic, sampai dengan fungsi-fungsi yang lebih kompek seperti matrix

inverse, matrixeigenvalues, 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

(26)

4. Graphics, MATLAB memiliki fasilitas untuk menampilkan vector dan

matrices sebagai suatu grafik. Dalam hal 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 untuk membiasakan diri

untuk memunculkan grafik mulai dari bentuk yang sederhana sampai dengan

tingkatan graphicaluser interfaces pada aplikasi MATLAB.

5. MATLAB Application Program Interface (API), merupakan suatu library

yang memungkinkan program yang telah di tulis 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

(27)

BAB 3

ANALISIS DAN PERANCANGAN

3.1 Analisis Jaringan Saraf Tiruan

Perceptron juga termasuk salah satu bentuk jaringan saraf yang sederhana. Perceptron

biasanya digunakan untuk mengklasifikasikan suatu pola tertentu yang sering dikenal

dengan pemisahan secara linear. Sesuai dengan karakteristik jaringan saraf tiruan,

pada dasarnya perceptron memiliki kecenderungan yang sama dengan jenis jaringan

saraf tiruan lainnya, namun setiap jenis memiliki karakteristik masing-masing, seperti

halnya single layer Jaringan saraf tiruan, biasanya hanya digunakan untuk

memberikan solusi yang sifatnya hanya sederhana saja.

Perceptron pada jaringan saraf tiruan dengan satu lapisan memiliki bobot yang

bisa diatur dan suatu nilai ambang (threshold). Algoritma yang digunakan oleh aturan

ini akan mengatur parameter-parameter 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.

(28)

Garis pemisah antara daerah positif dan daerah nol memiliki pertidaksamaan:

1 1+ 2 2+ > 3

Sedangkan garis pemisah antara daerah negatif dengan daerah nol memiliki

pertidaksamaan:

1 1 + 2 2+ >−3

Misalkan kita gunakan pasangan vektor input s dan vektor output sebagai pasangan

vektor yang akan dilatih.

3.2 Analisis Pengenalan Pola

Pengenalan pola, optical character recognition disebut aplikasi saraf utama bila

melibatkan cek dan alamat surat yang keduanya ditulis dengan tangan.

Masalah-masalah pengenalan pola juga terdapat dalam bidang inspeksi industri, misalnya

dalam inspeksi silicon wafer, terdapat cacat yang tidak mudah dikenali, lalu penyaring

berdasar jaringan saraf menjadi alat yag disukai.

Metode pengenalan pola dengan jaringan saraf tiruan dilatih dengan

seperangkat data untuk bisa mengenal dan mengidentifikasi pola data atau kurva.

Proses pelatihan sering disebut tahap belajar (learning process). Sehingga learning

process menjadi bagian yang penting juga dalam metode. Pemilihan algoritma dan

parameter yang bersesuaian dan penentuan berapa banyak perangkat data yang

dibutuhkan dalam learning process sangat penting untuk menentukan akurasi dari

(29)

Awal neural network diset secara acak, kemudian perangkat data dimasukkan ke

jaringan saraf untuk pembelajaran atau pelatihan. Ketika data dimasukkan, jaringan

saraf akan belajar dengan mengubah parameter-parameternya sehingga semakin

mendekati atau semakin sesuai dengan pola data masukan tersebut. Ketika semua data

latih sudah dimasukkan, jaringan saraf dianggap sudah dapat mengenal dan

mengidentifikasi pola data tersebut sehingga telah siap digunakan untuk menghasilkan

keluaran. Hasil keluarannya dengan demikian akan sesuai dengan pola data yang telah

diidentifikasi oleh neural network.

Prinsipnya ada dua cara untuk melatih neural network yaitu dengan supervised

learning dan unsupervised learning. Pada unsupervised learning, neural network

hanya diberi data masukan saja tapi bagaimana outputnya tidak ditentukan. Ketika

data yang dimasukkan bertambah, neural network akan mengkategorikan atau

mengelompokkan data masukan tersebut. Pada supervised learning, neural network

diberi sepasang data latih yang terdiri dari data masukan dan target. Jadi ketika data

yang dimasukan bertambah neural network akan mengubah karakteristik internalnya

agar bisa menghasilkan keluaran seperti targetnya. Maka dengan demikian cara

learning yang bisa dipakai untuk pengenalan pola adalah yang supervised learning

karena data yang harus dilatihkan adalah berupa pasangan data input dan target

(Hagan, 1996).

3.3 Algoritma Perceptron

Perceptron memberikan pengaruh yang kuat di awal pengembangan jaringan saraf

(30)

jaringan yang dikembangkan oleh McCulloch & Pitt dan Hebb, perceptron juga

menggunakan sebuah threshold (nilai ambang) untuk fungsi output. Proses belajar

pada perceptron menggunakan pengaturan bobot secara iterative (berulang) yang lebih

handal dibanding Hebb Rule. Salah satu model sederhana dari perceptron

menggunakan aktivasi biner untuk unit sensor dan unit associator, serta aktivasi +1, 0

atau ±1 untuk unit response. Unit sensor dihubungkan ke unit associator oleh jalur

dengan bobot yang tetap dan bernilai +1, 0, -1 yang ditentukan secara random. Fungsi

aktivasi dari tiap unit associator adalah fungsi undak biner dengan nilai ambang yang

dapat diubah-ubah. Signal yang dikirim dari unit associator ke unit output adalah

biner (1 atau 1). Output dari perceptron adalah = �( ), di mana fungsi aktivasinya

adalah:

1 >�

�= ( ) = 0 − � ≤ ≤ �

−1 <−�

Bobot dari unit associator ke unit response (output) di atur melalui aturan pelatihan

perceptron. Untuk setiap input pelatihan, jaringan akan menghitung respon dari unit

output. Kemudian jaringan akan menentukan apakah error terjadi pada pola input

tersebut dengan membandingkan output hasil perhitungan dengan nilai target.

Jaringan tidak dapat membedakan error yang terjadi (apakah antara 0 dan ±1 atau +1

dan ±1 dll), tetapi tanda (+/-) dari error akan mengarahkan perubahan bobot untuk

mendekati nilai target. Namun, hanya bobot dengan signal tidak sama dengan nol saja

yang diatur oleh perceptron. Jika terjadi error pada pola pelatihan tertentu, maka

(31)

1 = 1 +� 1

Di mana t = nilai target (1 atau ±1, bipolar); dan a adalah laju pelatihan. Pelatihan

terus dilakukan hingga error tidak terjadi. Berikut arsitektur dari sebuah jaringan

perceptron sederhana untuk klasifikasi pola (pattern classification). Output dari unit

associator adalah vektor biner dan vektor ini selanjutnya digunakan sebagai signal

input pada unit output. Karena hanya bobot antara unit associator dan unit output

yang bisa diatur maka dapat membatasi pengamatan pada layer tunggal bagian dari

jaringan, yang ditunjukkan oleh Gambar 3.2.

Gamabar 3.2 Proses Antar Unit Perceptron

Arsitektur, unit associator berfungsi layaknya seperti unit input. Tujuan dari pelatihan

jaringan fuzzy adalah untuk mengklasifikasikan setiap pola input ke dalam kelas

tertentu, apakah termasuk (belonging) atau tidak termasuk (not belonging). Jika input

termasuk ke dalam kelas maka output yang dihasilkan +1 dan jika tidak maka output

(32)

Algoritma yang dipakai adalah algoritma yang dapat digunakan baik untuk

input bipolar maupun biner, dengan bipolar target, nilai ambang (3) tetap, dan bias

yang bisa diatur. Nilai ambang (3) disini tidak memainkan peranan seperti dalam

fungsi undak. Keduanya (bias dan nilai ambang) di perlukan. Algoritma ini tidak

terlalu sensitif terhadap nilai inisialisasi bobot (nilai awal bobot) maupun terhadap laju

pelatihan. Lankah-langkah algoritma pelatihan perceptron adalah:

a. Langkah 0. Inisialisasi bobot dan bias, untuk lebih mudah set bias dan bobot

ke nol. Lalu tentukan nilai laju pelatihan.

b. Langkah 1 Selama kondisi henti tidak terpenuhi jalankan langkah 2-6.

c. Langkah 2 Untuk setiap pasangan pola s:t lakukan langkah 3-5.

d. Langkah 3 Set nilai aktivasi untuk unit input, = .

e. Langkah 4 hitung respon dari unit output.

= +

1 >�

�= = 0 − � ≤ ≤ �

−1 <−�

f. Langkah 5 Update nilai bobot dan bias jika error terjadi pada pola.

(33)

g. Langkah 6 Test kondisi henti, jika tidak ada perubahan bobot di langkah 2,

berhenti jika tidak, lanjut. Dari nilai 1 bobot hasil pelatihan dapat diperoleh

garis pemisah (separating line).

+ + >�untuk respon positif, dan

+ + <−� untuk respon negatif.

jika input pelatihan hanya 2 pasang.

Algoritma bisa digunakan baik untuk input biner maupun bipolar, dengan 3

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

diperbaiki hanyalah bobot-bobot yang berhubungan dengan input yang aktif ( H 0)

dan bobot -bobot yang tidak menghasilkan nilai y yang benar.

3.4 Perancangan

Hal yang paling dominan ketika perancangan sistim dilakukan adalah memodelkan

kebutuhan pemakai. Ada banyak cara unuk memodelkan sistim sebagaimana banyak

cara yang digunakan seorang arsitek ketika akan membangun sebuah rumah. Dalam

sebuah sistim, model merupakan kombinasi antara perngkat lunak dan perangkat

keras. Ada beberapa hal yang menggaris bawahi pemakaian suatu model, yaitu:

1. Dapat memfokuskan perhatian pada hal-hal penting dalam sistim tanpa mesti

terlibat lebih jauh.

2. Mendiskusikan perubahan dan koreksi terhadap kebutuhan pemakai dengan

(34)

3. Menguji pengertian penganalisa sistim terhadap kebutuhan pemakai dan

membantu pendesain sistim dan programmer membangun sistim.

3.4.1 Flowchart

Untuk menggambarkan proses yang dapat dilakukan penggunaan perancangan

perangkat lunak pengenalan pola huruf menggunakan algoritma perceptron yang

dimulai dari proses input sampai hasil output, penulis menggunakan model proses

prosedural yaitu dengan menggunakan flowchart. Flowchart merupakan langkah

awal pembuatan program.

Dengan adanya flowchart urutan proses kegiatan menjadi lebih jelas. Jika ada

penambahan proses maka dapat dilakukkan lebih mudah. Setelah flowchart selesai

disusun, selanjutnya pemrograman (programer) menerjemahkanya ke bentuk program

dengan bahasa pemrograman (Irma, 2008). Adapun gambar-gambar simbol proses

dalam flowchart pada Tabel 3.1.

Tabel 3.1 Flowchart

Nama Gambar Fungsi

Terminator

Terminator berfungsi sebagai

(35)

Process

menunjukkan arah aliran pada

program.

Preparation Preparation berfungsi untuk

proses inisialisasi atau

pemberian harga awal atau

untuk perulangan/looping.

Proses Proses berfungsi sebagai

perhitungan ataupun proses

data.

Connector

Connector digunakan sebagai

penghubung bagian-bagian

(36)

Outputdata

Outputdata sebagai Informasi

Off page connector Off page connector sebagai

penghubung bagian-bagian

flow chart.

Predefined procces Predefined procces digunakan

untuk menyatakan sekumpulan

langkah proses yang ditulis

Display Display digunakan sebagai

output/hasil yang diajukan

(37)

3.4.2 Flowchat Pengenalan Pola

Di bawah ini dapat di lihat flowchat dari program pengenalan pola huruf dengan

menggunakan algoritma perceptron.

Gambar 3.3 Flowchart Pengenalan Pola Huruf. Start

input pola huruf

Pelatihan jaringan untuk pengenalan pola

TRUE if

y==target

FALSE

Output

Hasil Pengujian

(38)

3.5 Perancangan Perangakat Lunak

Di tahap ini dikembangkanlah cetak biru(blueprint) dan spesifikasi teknis yang

dibutuhkan untuk mengimplementasi program antarmuka pengguna dan jaringan yang

dibutuhkan oleh sistim. Dengan demikian perancangan sistim berfungsi untuk

menggambarkan bagaimana suatu sistem dibentuk. Tampilan perancangan sistim dari

perangkat lunak Pengenalan pola ini adalah sebagai berikut:

Gambar 3.4 Perancangan Tampilan Program.

A B

C

D

E

F G H

I

J

K

L

M N

O

P Q R S

T

U

V

W X

Y

Z

Load

Pelatihan

Masukkan Huruf

Static Text Buka

(39)

BAB 4

IMPLEMENTASI SISTEM

4.1 Implementasi Sistim Berdasarkan Perancangan

Ini merupakan tahap terakhir dari pengembangan sistim. Pada tahap ini melibatkan

pelatihan bagi pemakai untuk mengendalikan sistim. Programmer merupakan pelaku

utama dalam tahap implementasi karena mereka merancang, membuat kode dan

mengatasi kesalahan-kesalahan dari program komputer. Implementasi merupakan

langkah yang digunakan untuk mengoperasikan simulasi yang telah dibuat. Dalam bab

ini akan dijelaskan mengenai cara dan hasil pembuatan perancangan perangkat lunak

pengenalan pola huruf menggunakan algoritma perceptron. .

4.2 Tujuan Implementasi

Adapun tujuan implementasi sistim yaitu:

a. Menyelesaikan desain perangkat lunak jarigan saraf tiruan yang baru akan

dibuat.

b. Menguji program dan prosedur baru.

c. Memastika bahwa perangkat lunak dapat dibuka dengan sempurna.

d. Menguji sistim baru sesuai dengan apa yang diinginkan.

e. Memastika bahwa pemakai (user) dapat mengoperasikan sistim baru dengan

(40)

4.3 Komponen Implementasi Sistem

Untuk mengetahui perancangan perangkat lunak jaringan saraf tiruan yang telah

dikerjakan dapat berjalan dengan baik atau tidak, maka perlu dilakukan pengujian

terhadap sistim yang telah dibuat. Untuk itu dibutuhkan beberapa komponen utama

mencakup perangkat keras (hardware), perangkat lunak (software), dan otak

(brainware).

Pada perancangan perangkat lunak pengenalan pola huruf menggunakan

algoritma perceptron dibutuhkan beberapa komponen.

1. Perangkat Keras (hardware)

perangkat keras adalah semua bagian fisik komputer dan dibedakan dengan

data yang berada didalamnya atau beroperasi didalamnya, dan dibedakan

dengan perangkat lunak yang menyediakan instruksi untuk perangkat keras

dalam menyelesaikan tugasnya, perangkat keras yang dibutuhkan.

a. Monitor.

b. Hardisk.

c. Memori.

d. Keyboard dan mause.

.

2. Perangkat lunak (software)

Perangkat lunak adalah program yang berisi kumpulan intruksi untuk

melakukan proses pengolahan data.

a. Sistim Operasi Windows 7.

(41)

3. Perangkat Operasi (brainware)

Brainware adalah manusia yang terlibat dalam menjalankan program, dan

mengatur sistim didalam komputer. Diartikan sebagai perangkat intelektual

yang menjalankan dan mengeksplorasi kemapuan dari hardware maupun

software.

4.4 Implementasi Pemrosesan

1. Tampilan awal menjalankan program dengan aplikasi MATLAB. Kemudian

klik load untuk melanjutkan pemrosesan, lihat Gambar 4.1.

(42)

2. Setelah klik load maka akan muncul pola huruf A,B,C,...Z. Kemudian untuk

melanjutkan pengujian klik pelatihan, lihat pada Gambar 4.2.

(43)

3. Setelah klik pelatihan akan terjadi pengenalan karakter huruf, dalam proses

pelatihan area buffer akan menunjukkan area yang bernilai 0 dan area yang

bernilai 1, area yang digunakan sebagai input untuk menunjukkan bobot sesuai

dengan algoritma. Pada proses pelatihan maka akan muncul neural network

training, lihat Gambar 4.3 dan Gambar 4.4.

(44)

Kemudian akan muncul neural network training, proses dari pelatihan pola

huruf lihat Gambar 4.4.

(45)

4. Selanjutnya, klik buka untuk memilih satu pola hutuf dan klik open setelah

memilih huruf yang telah tersimpan dalam bentuk gambar.jpg, lihat Gambar

4.5.

(46)

5. Selanjutnya, klik uji untuk mengetahui apakah huruf “F” benar dan sesuai

dengan target yang telah diisi secara manual, lihat Gambar 4.6.

(47)

BAB 5

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Berdasarkan perancangan perngkat lunak pengenalan pola huruf menggunakan

algoritma perceptron, maka dapat disimpulkan:

1. Jaringan saraf tiruan lapis tunggal bisa digunakan untuk menyelesaikan

masalah pengenalan pola, contohnya pengenalan pola tulisan tangan.

2. Hasil pengujian sangat akurat karena target telah diisi secara otomatis,

Kemungkinan terjadinya kesalahan sangat kecil.

5.2 Saran

Untuk pengembangan lebih lanjut perangkat lunak maka:

1. Bagi seorang mahasiswa atau untuk kebutuhan penelitian, perangkat lunak

pengenalan pola huruf dapat dijadikan sebagai referensi dan bisa

dikembangkan menjadi yang lebih baik lagi, dan juga untuk memperbaiki

kekurangan dan menyempurnakan sofwar.

2. Bisa ditambahkan juga pola lain, misalnya pola huruf dengan fonts yang

berbeda, pola angka, pengenalan wajah seseorang, dan tanda tangan. Sehingga

(48)

DAFTAR PUSTAKA

Arhami, M. dan Desiani, A. 2007. Konsep Kecerdasan Buatan. Andi

Publisher. Yogyakarta.

Arianto, M. dan Wahyu, C. 2011. Panduan Belajar Mandiri Matlab. Elex

Media Komputindo. Jakarta.

Hermawan, Arief. 2007. Jaringan Saraf Tiruan Teori dan Aplikasi. Andi

Publisher. Yokyakarta.

Kusumadewi, Sri. 2004. Membangun Jaringan Saraf Tiruan Menggunakan

Matlab & Excel Link. Bandung.

Munir, Rinaldi. 1998. Algoritma dan Pemrograman. Informatika. Bandung.

Pandjaitan, W. Lanny. 2007. Dasar-dasa Komputasi Cerdas. Andi publisher.

Yogyakarta

Puspitaningrum, Diyah. 2009. Pengantar Jaringan Saraf Tiruan. Andi

Publisher. Yokyakarta.

Sahid. 2007. Panduan Praktis Matlab. Andi Publisher. Yogyakarta.

Sianipar. 2013. Matlab, Image Processing, dan Metode Numerik. Informatika.

Bandung.

Siang, J. J. 2009. Jaringan Saraf Tiruan dan Pemrograman Menggunakan

Gambar

Gambar 2.1.
Gambar 2.2 Halaman Command Window
Gambar 3.1 Pembatas Linear Perceptron.
Gambar Fungsi
+7

Referensi

Dokumen terkait

Berdasarkan dari hasil penelitian, analisis, perancangan sistem dan pembuatan simulator pengenalan pola garis dasar tulisan tangan dengan menggunakan algoritma

Tujuan yang akan dicapai pada Tugas Akhir ini adalah merancang dan merealisasikan perangkat lunak yang berbasis jaringan saraf tiruan dengan menggunakan algoritma

Sedangkan proses pengenalan pola merupakan proses untuk menentukan nilai keakuratan BPNN dalam mengenali pola karakter huruf Jawa. Pola karakter berupa data pengujian

Pengenalan Pola Huruf Arab menggunakan Jaringan Syaraf Tiruan dengan Metode Backpropagation.. Binary Image,

Pada bab ini membahas tentang analisis dan perancangan perangkat lunak terhadap algoritma yang akan digunakan pada perangkat lunak pengenalan wajah menggunakan metode Biomimetic

Mengetahui tingkat akurasi dari perangkat lunak pengenalan pembacaan makhraj huruf hijaiyah dengan metode Convolutional Neural

Penelitian ini menggunakan MLP dengan algoritma pembelajaran error back propagation untuk melakukan pengenalan pola terhadap pola Aksara Jawa berdasarkan citra hasil

 Mengapa  KUALITAS : perancangan adalah satu2nya jalan untuk mentransformasi secara akurat kebutuhan2 customer ke dalam sebuah produk akhir berupa perangkat lunak yang..