i Universitas Kristen Maranatha DENGAN MENGGUNAKAN
ALGORITMA RESILIENT BACKPROPAGATION
ABSTRAK
Juventus Suharta (0722026)
Jurusan Teknik Elektro Universitas Kristen Maranatha email : reuvens_email@yahoo.com
Grafologi adalah ilmu yang mempelajari karakter seseorang seseorang dengan cara menganalisa tulisan tangan. Menganalisa tulisan tangan sangatlah membantu dalam banyak bidang saat ini, misalnya dalam bidang pendidikan, kriminalitas dan dapat digunakan sebagai konseling. Salah satu cara yang digunakan dalam grafologi untuk mengetahui karakter seseorang, adalah dengan menganalisa pola garis dasar kalimat dari tulisan tangan.
Pada Tugas Akhir ini dirancang dan direalisasikan perangkat lunak berbasis Jaringan Saraf Tiruan untuk mengenali pola garis dasar kalimat dari tulisan tangan manusia, dengan menggunakan nilai rata-rata dari posisi pixel yang bernilai 1 pada citra yang akan menjadi masukan dari data latih dan data uji pada Algoritma Resilient Backpropagation. Perangkat lunak ini direalisasikan menggunakan MATLAB R2008a.
Perangkat lunak pengenalan pola garis dasar tulisan tangan pada Tugas Akhir ini berhasil direalisasikan dan diperoleh keberhasilan pengenalan sebesar 65,63% pada pengujian. Persentase pengenalan masing-masing pola: untuk pola garis lurus 75%, pola garis menaik 62,5%, untuk pola garis menurun, dan untuk pola garis acak 87,5%.
ii Universitas Kristen Maranatha ABSTRACT
Juventus Suharta (0722026)
Department of Electrical Engineering Maranatha Christian University email : reuvens_email@yahoo.com
Graphology is the study of a person's character by analyzing handwriting. Analyzing handwriting is helpful in many areas today, for example in education, crime and can be used as counseling. One method used in graphology to know the character of a person, is by analyzing the baseline pattern of handwritten sentences
.
This final project is designed and realized a software based Artificial Neural Networks to recognize patterns of baseline sentences of human handwriting, by using out the average value of the positions of pixels of value 1 in entire image that will become input from the training data and testing data in Resilient Backpropagation Algorithm. The software is realized using MATLAB R2008a.
Handwriting Baseline Pattern Recognition on this final project successfully realized. In testing, this software has 65.63% recognize well. Percentage identity of each pattern: for straight line pattern 75%, for ascending line pattern 62,5%, for descending line pattern, and for random line pattern 87,5%.
iii Universitas Kristen Maranatha
ABSTRACT ... ii
KATA PENGANTAR ... ii
DAFTAR GAMBAR ... viii
DAFTAR TABEL ... x
BAB I ... 1
Pendahuluan ... 1
I.1 Latar Belakang ... 1
I.2 Identifikasi Masalah ... 2
I.3 Pembatasan Masalah ... 2
I.4 Tujuan Tugas Akhir ... 3
I.5 Sistematika Penelitian ... 3
BAB II ... 5
LANDASAN TEORI ... 5
II.1 Teori Dasar Citra Dijital ... 5
II.1.1 Pixel Dan Resolusi Citra ... 5
II.1.2 Ciri Citra ... 6
II.2 Pengolahan Citra Dijital ... 6
II.2.1 Grayscale ... 6
II.2.2 Binerisasi ... 7
II.2.3 Cropping ... 8
II.2.4 Resizing... 8
II.3 Jaringan Syaraf Biologi ... 8
II.4 Jaringan Syaraf Tiruan ... 10
II.4.1 Arsitektur Jaringan Syaraf Tiruan ... 10
II.4.2 Fungsi Aktivasi ... 12
II.4.3 Bias ... 13
II.4.4 Laju Pembelajaran / Learning Rate ... 13
II.5 Metode Backpropagation ... 14
II.5.1 Arsitektur Backpropagation ... 15
II.5.2 Algoritma Pelatihan Backpropagation ... 17
iv Universitas Kristen Maranatha
II.5.4 Pengujian ... 22
II.6 Metode Resilient Backpropagation (Rprop) ... 23
II.6.1 Arsitektur Resilient Backpropagation (Rprop) ... 24
II.6.2 Algoritma Resilient Backpropagation (Rprop) ... 24
II.7 Grafologi... 33
II.7.1 Definisi Grafologi ... 33
II.7.2 Pola Garis Dasar kalimat Dalam Grafologi ... 34
BAB III... 37
PERANCANGAN PERANGKAT LUNAK ... 37
III.1 Arsitektur Perancangan ... 37
III.2 Diagram Alir ... 38
III.2.1 Diagram Alir Praproses ... 39
III.2.2 Diagram Alir Tahapan Mencari Nilai Rata-rata... 40
III.2.3 Diagram Alir Pelatihan Algoritma Resilient Backpropagation ... 43
III.2.4 Diagram Alir Pengujian Algoritma Resilient Backpropagation... 44
III.3 Penerapan Grafologi... 45
III.4 Perancangan Antarmuka Pemakai (User Interface) ... 48
BAB IV ... 50
SIMULASI DAN ANALISA ... 50
IV.1 Proses Pelatihan ... 50
IV.1.1 Percobaan 1: Pengaruh Jumlah Hidden Neuron ... 50
IV.1.2 Percobaan 2: Pengaruh Faktor Naik (FN) ... 52
IV.1.3 Percobaan 3: Pengaruh Faktor Turun (FT) ... 54
IV.2 Proses Pengujian ... 55
IV.2.1 Pengujian I ... 59
IV.2.2 Pengujian II ... 63
IV.3 Analisa ... 67
BAB V ... 68
KESIMPULAN DAN SARAN ... 68
V.1 Kesimpulan... 68
vi Universitas Kristen Maranatha
Gambar 2. 2 Single Layer Network ... 11
Gambar 2. 3 Multi Layer Network ... 11
Gambar 2. 4 Model JST Resilient Backpropagation ... 24
Gambar 2. 5 Arsitektur Risilent Backpropagation Dalam Contoh Perhitungan ... 29
Gambar 2. 6 Pola Garis Dasar Lurus ... 34
Gambar 2. 7 Pola Garis Dasar Naik ... 35
Gambar 2. 8 Pola Garis Dasar Turun ... 35
Gambar 2. 9 Pola Garis Dasar Tidak Beraturan ... 36
Gambar 3. 1 Arsitektur Resilient Backpropagation Pengenalan Pola Garis... Dasar Tulisan ... 37
Gambar 3. 2 Diagram Alir Utama ... 38
Gambar 3. 3 Diagram Alir Praproses ... 39
Gambar 3. 4 Diagram Alir Tahapan Mencari Nilai Rata-rata ... 40
Gambar 3. 5 Citra 4x4 ... 41
Gambar 3. 6 Citra 4x4 Dengan Garis Nilai Rata-rata Posisi Pixel bernilai 1 ... 42
Gambar 3. 7 Diagram Alir Pelatihan Algoritma Risilent Backpropagation ... 43
Gambar 3. 8 Diagram Alir Pengujian Algoritma Risilent Backpropagation ... 44
Gambar 3. 9 Pola Garis Dasar Lurus ... 45
Gambar 3. 10 Pola Garis Dasar Naik ... 46
Gambar 3. 11 Pola Garis Dasar Turun ... 46
Gambar 3. 12 Pola Garis Dasar Tidak Beraturan ... 47
Gambar 3. 13 Antarmuka Perangkat Lunak ... 48
Gambar 4. 1 Grafik Perbandingan Jumlah Pengenalan Terhadap Jumlah... Hidden Neuron ... 50
Gambar 4. 2 Grafik Perbandingan Jumlah Pengenalan Pola Terhadap FN ... 52
viii Universitas Kristen Maranatha
Tabel 2. 2 Bobot Dari Hidden Layer Ke Output Layer... 28
Tabel 3. 1 Atribut MATLAB Pada Perancangan Perangkat Lunak ... 48
Tabel 4. 1 Tabel Percobaan Jumlah Hidden Neuron... 51
Tabel 4. 2 Tabel Percobaan Faktor Naik ... 53
Tabel 4. 3 Tabel Percobaan Faktor Turun ... 54
Tabel 4. 4 Tabel Data Input Pengujian... 58
Tabel 4. 5 Tabel Hasil Pengujian I ... 59
A - 1
LAMPIRAN A
A - 3
for i6=1:hiddenlayer for j6=1:jmlhinput
bobot_in(i6,j6)=beta*bobot_in_r_trans(i6,j6)/bobot_inabs(i6); end
end
bobot_bias_in=(beta-rand(hiddenlayer,1)*(beta--beta));
b2=bobot_bias_in;
while con e=0;
for i1=1:jmlhdata
for j1=1:hiddenlayer; (j1)=bobot_bias_in(j1); for k1=1:jmlhinput
z_net(j1)=z_net(j1)+x(i1,k1)*bobot_in(j1,k1); end
zj(j1)=(2/(1+exp(-z_net(j1))))-1; end
y_net = bobot_bias_hidden+zj*bobot_hidden;
for l1=1:outputlayer
yj(l1)=1/(1+exp(-y_net(l1)));
f_errorj_out(l1)=(target(i1,l1)-yj(l1))*(yj(l1)*(1-(yj(l1)))); end
delbobot_hidden=(f_errorj_out'*zj); delbobot_bias_hidden=f_errorj_out';
delbobot_hidden_2=delbobot_hidden_s.*delbobot_hidden;
delbobot_bias_hidden_2=delbobot_bias_hidden_s.*delbobot_bias_hidden;
delbobot_hidden_s=delbobot_hidden;
A - 5
f_error_hidden= bobot_hidden*f_errorj_out'*((yj)*(1-(yj))');
delbobot_bias_in=f_error_hidden';
delbobot_in_2=delbobot_in_s.*delbobot_in;
delbobot_bias_in_2=delbobot_bias_in_s.*delbobot_bias_in;
delbobot_in_s=delbobot_in;
A - 6
bobot_hidden=bobot_hidden+delbobot_hidden';
bobot_bias_hidden=bobot_bias_hidden+delbobot_bias_hidden'; bobot_in=bobot_in+delbobot_in;
bobot_bias_in=bobot_bias_in+delbobot_bias_in';
A - 7
Program Pengujian
clear all; clc;
load total_uji.matinputtotal2 load rprop1.mat
tic
x=inputtotal2;
[jmlhdata jmlhinput]=size(x); hiddenlayer=29;
outputlayer=2; alp_p=1.2; alp_m=0.5;
for i1=1:jmlhdata
for j1=1:hiddenlayer;
z_net(j1)=bobot_bias_in(j1); for k1=1:jmlhinput
z_net(j1)=z_net(j1)+x(i1,k1)*bobot_in(j1,k1); end
zj(j1)=(2/(1+exp(-z_net(j1))))-1; end
y_net = bobot_bias_hidden+zj*bobot_hidden;
for l1=1:outputlayer
yj(l1)=1/(1+exp(-y_net(l1))); end
yj ;
y=round(yj) end
A - 8
% LAT('CALLBACK',hObject,eventData,handles,...) calls the local
% function named CALLBACK in LAT.M with the given input arguments. %
% LAT('Property','Value',...) creates a new LAT or raises the
% existing singleton*. Starting from the left, property value pairs are % applied to the GUI before lat_OpeningFcn gets called. An
% unrecognized property name or invalid value makes property application % stop. All inputs are passed to lat_OpeningFcn via varargin.
%
% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES
% Edit the above text to modify the response to help lat
% Last Modified by GUIDE v2.5 29-Jul-2013 23:06:54
% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State.gui_Callback = str2func(varargin{1}); end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else
gui_mainfcn(gui_State, varargin{:}); end
A - 9
% --- Executes just before lat is made visible.
function lat_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn. % hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to lat (see VARARGIN)
% Choose default command line output for lat
handles.output = hObject;
% Update handles structure
guidata(hObject, handles);
% UIWAIT makes lat wait for user response (see UIRESUME) % uiwait(handles.figure1);
% --- Outputs from this function are returned to the command line.
function varargout = lat_OutputFcn(hObject, eventdata, handles)
% varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% Get default command line output from handles structure
varargout{1} = handles.output;
% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
A - 10
A - 11
y_net = bobot_bias_hidden+zj*bobot_hidden;
delbobot_hidden_2=delbobot_hidden_s.*delbobot_hidden;
delbobot_bias_hidden_2=delbobot_bias_hidden_s.*delbobot_bias_hidden;
delbobot_hidden_s=delbobot_hidden;
A - 12
f_error_hidden= bobot_hidden*f_errorj_out'*((yj)*(1-(yj))');
delbobot_bias_in=f_error_hidden';
delbobot_in_2=delbobot_in_s.*delbobot_in;
delbobot_bias_in_2=delbobot_bias_in_s.*delbobot_bias_in;
delbobot_in_s=delbobot_in;
A - 13
bobot_hidden=bobot_hidden+delbobot_hidden';
bobot_bias_hidden=bobot_bias_hidden+delbobot_bias_hidden'; bobot_in=bobot_in+delbobot_in;
A - 14
plot(epoch,e,'m.-'); title('Grafik Error Terhadap Epoch'); hold on;
save rprop1.matbobot_inbobot_bias_inbobot_hiddenBobot_bias_hidden
% --- Executes on button press in pushbutton2.
function pushbutton2_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
function edit1_Callback(hObject, eventdata, handles)
% hObject handle to edit1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of edit1 as text
% str2double(get(hObject,'String')) returns contents of edit1 as a double
A - 15
function edit1_CreateFcn(hObject, eventdata, handles)
% hObject handle to edit1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
% --- Executes on button press in pushbutton3.
function pushbutton3_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton3 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
function edit2_Callback(hObject, eventdata, handles)
% hObject handle to edit2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of edit2 as text
% str2double(get(hObject,'String')) returns contents of edit2 as a double
% --- Executes during object creation, after setting all properties.
function edit2_CreateFcn(hObject, eventdata, handles)
% hObject handle to edit2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
% --- Executes on button press in pushbutton4.
A - 16
% hObject handle to pushbutton4 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
[FileName,PathName] = uigetfile('*.jpg','Select the JPG-file'); handles.gambar=imread(fullfile(PathName, FileName));
% --- Executes on button press in pushbutton5.
function pushbutton5_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton5 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
handles.glurus4=rgb2gray(handles.gambar);
A - 17 height]);%%position vector, [xmin ymin width height].
A - 18
% %% make sure the image doesn't disappear if we plot something else % hold on
% --- Executes on button press in pushbutton6.
function pushbutton6_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton6 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
A - 19
y_net = Bobot_bias_hidden+zj*bobot_hidden; tinggi, cenderung mencoba mengatur, memiliki kontrol diri baik, hidupnya serba teratur dan penuh dengan aturan main dan jadwal';
elseif y==[0 1];
x='Pola Garis Dasar Naik'
karakter='Tulisan dengan garis dasar menaik ditemukan pada lebih dari 90% orang yang berhasil dalam kehidupan. Karakter tipe tulisan ini optimisme, aktif, berfikir positif, dan selalu berusaha untuk mencapai cita-cita';
elseif y==[1 0];
x='Pola Garis Dasar Turun'
karakter='Karakter tipe tulisan seperti ini cenderung melihat segala sesuatu dari segi buruknya, susahnya, ataupun masalahnya. Orang yang menulis dengan gaya ini sering merasa sinis terhadap lingkungan sekitar dan merasa selalu menjadi korban keadaan';
else
x='Pola Garis Dasar Acak'
karakter='Karakter tipe tulisan seperti ini kadang tampak bersemangat, lalu tertawa, tetapi kemudian tiba-tiba loyo dan berdiri tegak, atau bahkan menangis tersedu-sedu. Mereka memiliki pengendalian diri yang buruk dan kondisi emosi yang tidak stabil' ;
A - 20
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of edit3 as text
% str2double(get(hObject,'String')) returns contents of edit3 as a double
% --- Executes during object creation, after setting all properties.
function edit3_CreateFcn(hObject, eventdata, handles)
% hObject handle to edit3 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
% --- Executes on selection change in listbox1.
function listbox1_Callback(hObject, eventdata, handles)
% hObject handle to listbox1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% Hints: contents = get(hObject,'String') returns listbox1 contents as cell array % contents{get(hObject,'Value')} returns selected item from listbox1
% --- Executes during object creation, after setting all properties.
function listbox1_CreateFcn(hObject, eventdata, handles)
% hObject handle to listbox1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
A - 21
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function edit5_Callback(hObject, eventdata, handles)
% hObject handle to edit5 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of edit5 as text
% str2double(get(hObject,'String')) returns contents of edit5 as a double
% --- Executes during object creation, after setting all properties.
function edit5_CreateFcn(hObject, eventdata, handles)
% hObject handle to edit5 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
% --- Executes on button press in EXIT.
function EXIT_Callback(hObject, eventdata, handles)
% hObject handle to EXIT (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
B - 1
LAMPIRAN B
NILAI RATA-RATA POSISI PIXEL BERNILAI 1
B - 2
Data Latih Responden
ke
Nilai Rata-rata Posisi Pixel Bernilai 1
B - 3
Data Latih Responden
ke
Nilai Rata-rata Posisi Pixel Bernilai 1
B - 4
Data Latih Responden
ke
Nilai Rata-rata Posisi Pixel Bernilai 1
B - 5
Data Latih Responden
ke
Nilai Rata-rata Posisi Pixel Bernilai 1
B - 6
Tabel (Responden 1-16) Nilai Rata-rata Posisi Pixel (input 1-26) Data Pengujian
Data Uji Responden
ke
Nilai Rata-rata Posisi Pixel Bernilai 1
B - 7
Tabel (Responden 1-16) Nilai Rata-rata Posisi Pixel (input 26-50) Data Pengujian
Data Uji Responden
ke
Nilai Rata-rata Posisi Pixel Bernilai 1
B - 8
Tabel (Responden 17-32) Nilai Rata-rata Posisi Pixel (input 26-50) Data Pengujian
Data Uji Responden
ke
Nilai Rata-rata Posisi Pixel Bernilai 1
B - 9
Tabel (Responden 17-32) Nilai Rata-rata Posisi Pixel (input 26-50) Data Pengujian
Data Uji Responden
ke
Nilai Rata-rata Posisi Pixel Bernilai 1
C - 1
LAMPIRAN C
C - 2
Nama CITRA Tulisan Tangan Pola
Garis
Keluaran
Pola GarisPengenalan Karakter
Resp1
Lurus Lurus Benar Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Memiliki Konsentrasi Cukup Tinggi,Memiliki Energi Yang
Besar, Cenderung Mencoba Mengatur ,Biasa Menyiapkan Dirinya Saat Berhadapan Dengan Orang Lain,Orang Ini
Sangat Terkontrol ,Mengikuti Aturan Main Dan Diplomatis,Hidupnya Serba Teratur, Penuh Dengan Aturan
Main Dan Jadwal
Resp2
Lurus Lurus Benar Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Memiliki Konsentrasi Cukup Tinggi,Memiliki Energi Yang
Besar, Cenderung Mencoba Mengatur ,Biasa Menyiapkan Dirinya Saat Berhadapan Dengan Orang Lain,Orang Ini
Sangat Terkontrol ,Mengikuti Aturan Main Dan Diplomatis,Hidupnya Serba Teratur, Penuh Dengan Aturan
Main Dan Jadwal
Resp3
Lurus Lurus Benar Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Memiliki Konsentrasi Cukup Tinggi,Memiliki Energi Yang
Besar, Cenderung Mencoba Mengatur ,Biasa Menyiapkan Dirinya Saat Berhadapan Dengan Orang Lain,Orang Ini
Sangat Terkontrol ,Mengikuti Aturan Main Dan Diplomatis,Hidupnya Serba Teratur, Penuh Dengan Aturan
Main Dan Jadwal
Resp4
Lurus Lurus Benar Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Memiliki Konsentrasi Cukup Tinggi,Memiliki Energi Yang
Besar, Cenderung Mencoba Mengatur ,Biasa Menyiapkan Dirinya Saat Berhadapan Dengan Orang Lain,Orang Ini
Sangat Terkontrol ,Mengikuti Aturan Main Dan Diplomatis,Hidupnya Serba Teratur, Penuh Dengan Aturan
C - 3
Nama CITRA Tulisan Tangan
Garis Pola GarisPengenalan Karakter
Resp5
Lurus Lurus Benar Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Memiliki Konsentrasi Cukup Tinggi,Memiliki Energi Yang
Besar, Cenderung Mencoba Mengatur ,Biasa Menyiapkan Dirinya Saat Berhadapan Dengan Orang Lain,Orang Ini
Sangat Terkontrol ,Mengikuti Aturan Main Dan Diplomatis,Hidupnya Serba Teratur, Penuh Dengan Aturan
Main Dan Jadwal
Resp6
Lurus Lurus Benar Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Memiliki Konsentrasi Cukup Tinggi,Memiliki Energi Yang
Besar, Cenderung Mencoba Mengatur ,Biasa Menyiapkan Dirinya Saat Berhadapan Dengan Orang Lain,Orang Ini
Sangat Terkontrol ,Mengikuti Aturan Main Dan Diplomatis,Hidupnya Serba Teratur, Penuh Dengan Aturan
Main Dan Jadwal
Resp7
Lurus Acak Salah Tipe Orang Dengan Tulisan Ini Memiliki Perasaan Yang Tidak Stabil ,Kadang Bersemangat, Tertawa , Tetapi Kemudian Tiba-Tiba Loyo Bahkan Menangis, Memiliki Pengendalian Diri Yang Buruk, Merasa Kehilangan Rasa Aman (Karena Ditinggalkan , Tidak Ada Orang Yang Bisa
dipercaya dan Diperlakukan Kasar), Cenderung Merasa Rapuh Dan Mudah Hancur, Cenderung Merusak Diri Dan
Impulsi
Resp8
Lurus Acak Salah Tipe Orang Dengan Tulisan Ini Memiliki Perasaan Yang Tidak Stabil ,Kadang Bersemangat, Tertawa , Tetapi Kemudian Tiba-Tiba Loyo Bahkan Menangis, Memiliki Pengendalian Diri Yang Buruk, Merasa Kehilangan Rasa Aman (Karena Ditinggalkan , Tidak Ada Orang Yang Bisa
dipercaya dan Diperlakukan Kasar), Cenderung Merasa Rapuh Dan Mudah Hancur, Cenderung Merusak Diri Dan
C - 4
Nama CITRA Tulisan Tangan
Garis Pola GarisPengenalan Karakter
Resp9
Naik Naik Benar Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Optimis,Aktif,Berpikir Positif,Selalu Berusaha Mencapai
Cita
Resp10
Naik Naik Benar Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Optimis,Aktif,Berpikir Positif,Selalu Berusaha Mencapai
Cita
Resp11
Naik Naik Benar Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Optimis,Aktif,Berpikir Positif,Selalu Berusaha Mencapai
Cita
Resp12 Naik Naik Benar Optimis,Aktif,Berpikir Positif,Selalu Berusaha Mencapai Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Cita
Resp13
Naik Lurus Salah Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Memiliki Konsentrasi Cukup Tinggi,Memiliki Energi Yang
Besar, Cenderung Mencoba Mengatur ,Biasa Menyiapkan Dirinya Saat Berhadapan Dengan Orang Lain,Orang Ini
Sangat Terkontrol ,Mengikuti Aturan Main Dan Diplomatis,Hidupnya Serba Teratur, Penuh Dengan Aturan
Main Dan Jadwal
Resp14
Naik Lurus Salah Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Memiliki Konsentrasi Cukup Tinggi,Memiliki Energi Yang
Besar, Cenderung Mencoba Mengatur ,Biasa Menyiapkan Dirinya Saat Berhadapan Dengan Orang Lain,Orang Ini
Sangat Terkontrol ,Mengikuti Aturan Main Dan Diplomatis,Hidupnya Serba Teratur, Penuh Dengan Aturan
C - 5
Nama CITRA Tulisan Tangan
Garis Pola GarisPengenalan Karakter
Resp15
Naik Acak Salah Tipe Orang Dengan Tulisan Ini Memiliki Perasaan Yang Tidak Stabil ,Kadang Bersemangat, Tertawa , Tetapi Kemudian Tiba-Tiba Loyo Bahkan Menangis, Memiliki Pengendalian Diri Yang Buruk, Merasa Kehilangan Rasa Aman (Karena Ditinggalkan , Tidak Ada Orang Yang Bisa
dipercaya dan Diperlakukan Kasar), Cenderung Merasa Rapuh Dan Mudah Hancur, Cenderung Merusak Diri Dan
Impulsif
Resp16
Naik Naik Benar Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Optimis,Aktif,Berpikir Positif,Selalu Berusaha Mencapai
Cita
Resp17
Turun Turun Benar Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Optimis,Aktif,Berpikir Positif,Selalu Berusaha Mencapai
Cita
Resp18
Turun Acak Salah Tipe Orang Dengan Tulisan Ini Memiliki Perasaan Yang Tidak Stabil ,Kadang Bersemangat, Tertawa , Tetapi Kemudian Tiba-Tiba Loyo Bahkan Menangis, Memiliki Pengendalian Diri Yang Buruk, Merasa Kehilangan Rasa Aman (Karena Ditinggalkan , Tidak Ada Orang Yang Bisa
dipercaya dan Diperlakukan Kasar), Cenderung Merasa Rapuh Dan Mudah Hancur, Cenderung Merusak Diri Dan
Impulsif
Resp19
Turun Acak Salah Tipe Orang Dengan Tulisan Ini Memiliki Perasaan Yang Tidak Stabil ,Kadang Bersemangat, Tertawa , Tetapi Kemudian Tiba-Tiba Loyo Bahkan Menangis, Memiliki Pengendalian Diri Yang Buruk, Merasa Kehilangan Rasa Aman (Karena Ditinggalkan , Tidak Ada Orang Yang Bisa
dipercaya dan Diperlakukan Kasar), Cenderung Merasa Rapuh Dan Mudah Hancur, Cenderung Merusak Diri Dan
C - 6
Garis Pola Garis
Resp20
Turun Acak Salah Tipe Orang Dengan Tulisan Ini Memiliki Perasaan Yang Tidak Stabil ,Kadang Bersemangat, Tertawa , Tetapi Kemudian Tiba-Tiba Loyo Bahkan Menangis, Memiliki Pengendalian Diri Yang Buruk, Merasa Kehilangan Rasa Aman (Karena Ditinggalkan , Tidak Ada Orang Yang Bisa
dipercaya dan Diperlakukan Kasar), Cenderung Merasa Rapuh Dan Mudah Hancur, Cenderung Merusak Diri Dan
Impulsif
Resp21
Turun Acak Salah Tipe Orang Dengan Tulisan Ini Memiliki Perasaan Yang Tidak Stabil ,Kadang Bersemangat, Tertawa , Tetapi Kemudian Tiba-Tiba Loyo Bahkan Menangis, Memiliki Pengendalian Diri Yang Buruk, Merasa Kehilangan Rasa Aman (Karena Ditinggalkan , Tidak Ada Orang Yang Bisa
dipercaya dan Diperlakukan Kasar), Cenderung Merasa Rapuh Dan Mudah Hancur, Cenderung Merusak Diri Dan
Impulsif
Resp22
Turun Turun Benar Tipe Orang Dengan Tulisan Ini Sering Melihat Segala Sesuatu Dari Segi Buruk,Berpikir Negatif,Sering Merasa Sinis Terhadap Lingkungan Sekitar, Sering Merasa Selalu
Menjadi Korban Keadaan, Hidupnya Selalu Rumit,Susah Dan Berujung Aneh
Resp23
Turun Turun Benar Tipe Orang Dengan Tulisan Ini Sering Melihat Segala Sesuatu Dari Segi Buruk,Berpikir Negatif,Sering Merasa Sinis Terhadap Lingkungan Sekitar, Sering Merasa Selalu
Menjadi Korban Keadaan, Hidupnya Selalu Rumit,Susah Dan Berujung Aneh
Resp24
Turun Acak Salah Tipe Orang Dengan Tulisan Ini Memiliki Perasaan Yang Tidak Stabil ,Kadang Bersemangat, Tertawa , Tetapi Kemudian Tiba-Tiba Loyo Bahkan Menangis, Memiliki Pengendalian Diri Yang Buruk, Merasa Kehilangan Rasa Aman (Karena Ditinggalkan , Tidak Ada Orang Yang Bisa
dipercaya dan Diperlakukan Kasar), Cenderung Merasa Rapuh Dan Mudah Hancur, Cenderung Merusak Diri Dan
C - 7
Acak Lurus Salah Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Memiliki Konsentrasi Cukup Tinggi,Memiliki Energi Yang
Besar, Cenderung Mencoba Mengatur ,Biasa Menyiapkan Dirinya Saat Berhadapan Dengan Orang Lain,Orang Ini
Sangat Terkontrol ,Mengikuti Aturan Main Dan Diplomatis,Hidupnya Serba Teratur, Penuh Dengan Aturan
Main Dan Jadwal
Resp26
Acak Acak Benar Tipe Orang Dengan Tulisan Ini Memiliki Perasaan Yang Tidak Stabil ,Kadang Bersemangat, Tertawa , Tetapi Kemudian Tiba-Tiba Loyo Bahkan Menangis, Memiliki Pengendalian Diri Yang Buruk, Merasa Kehilangan Rasa Aman (Karena Ditinggalkan , Tidak Ada Orang Yang Bisa
dipercaya dan Diperlakukan Kasar), Cenderung Merasa Rapuh Dan Mudah Hancur, Cenderung Merusak Diri Dan
Impulsif
Resp27
Acak Acak Benar Tipe Orang Dengan Tulisan Ini Memiliki Perasaan Yang Tidak Stabil ,Kadang Bersemangat, Tertawa , Tetapi Kemudian Tiba-Tiba Loyo Bahkan Menangis, Memiliki Pengendalian Diri Yang Buruk, Merasa Kehilangan Rasa Aman (Karena Ditinggalkan , Tidak Ada Orang Yang Bisa
dipercaya dan Diperlakukan Kasar), Cenderung Merasa Rapuh Dan Mudah Hancur, Cenderung Merusak Diri Dan
Impulsif
Resp28
Acak Acak Benar Tipe Orang Dengan Tulisan Ini Memiliki Perasaan Yang Tidak Stabil ,Kadang Bersemangat, Tertawa , Tetapi Kemudian Tiba-Tiba Loyo Bahkan Menangis, Memiliki Pengendalian Diri Yang Buruk, Merasa Kehilangan Rasa Aman (Karena Ditinggalkan , Tidak Ada Orang Yang Bisa
dipercaya dan Diperlakukan Kasar), Cenderung Merasa Rapuh Dan Mudah Hancur, Cenderung Merusak Diri Dan
C - 8
Nama CITRA Tulisan Tangan
Garis Pola GarisPengenalan Karakter
Resp29
Acak Acak Benar Tipe Orang Dengan Tulisan Ini Memiliki Perasaan Yang Tidak Stabil ,Kadang Bersemangat, Tertawa , Tetapi Kemudian Tiba-Tiba Loyo Bahkan Menangis, Memiliki Pengendalian Diri Yang Buruk, Merasa Kehilangan Rasa Aman (Karena Ditinggalkan , Tidak Ada Orang Yang Bisa
dipercaya dan Diperlakukan Kasar), Cenderung Merasa Rapuh Dan Mudah Hancur, Cenderung Merusak Diri Dan
Impulsif
Resp30
Acak Acak Benar Tipe Orang Dengan Tulisan Ini Memiliki Perasaan Yang Tidak Stabil ,Kadang Bersemangat, Tertawa , Tetapi Kemudian Tiba-Tiba Loyo Bahkan Menangis, Memiliki Pengendalian Diri Yang Buruk, Merasa Kehilangan Rasa Aman (Karena Ditinggalkan , Tidak Ada Orang Yang Bisa
dipercaya dan Diperlakukan Kasar), Cenderung Merasa Rapuh Dan Mudah Hancur, Cenderung Merusak Diri Dan
Impulsif
Resp31
Acak Acak Benar Tipe Orang Dengan Tulisan Ini Memiliki Perasaan Yang Tidak Stabil ,Kadang Bersemangat, Tertawa , Tetapi Kemudian Tiba-Tiba Loyo Bahkan Menangis, Memiliki Pengendalian Diri Yang Buruk, Merasa Kehilangan Rasa Aman (Karena Ditinggalkan , Tidak Ada Orang Yang Bisa
dipercaya dan Diperlakukan Kasar), Cenderung Merasa Rapuh Dan Mudah Hancur, Cenderung Merusak Diri Dan
Impulsif
Resp32
Acak Acak Benar Tipe Orang Dengan Tulisan Ini Memiliki Perasaan Yang Tidak Stabil ,Kadang Bersemangat, Tertawa , Tetapi Kemudian Tiba-Tiba Loyo Bahkan Menangis, Memiliki Pengendalian Diri Yang Buruk, Merasa Kehilangan Rasa Aman (Karena Ditinggalkan , Tidak Ada Orang Yang Bisa
dipercaya dan Diperlakukan Kasar), Cenderung Merasa Rapuh Dan Mudah Hancur, Cenderung Merusak Diri Dan
D - 1
LAMPIRAN D
D - 2
1
Universitas Kristen Maranatha Bab ini akan membahas mengenai latar belakang masalah, identifikasi masalah, batasan masalah, tujuan Tugas Akhir, dan sistematika penulisan dari Tugas Akhir ini.
I.1 Latar Belakang
Saat ini teknologi komputer telah banyak diterapkan untuk membantu menyelesaikan berbagai masalah. Salah satu permasalahan tersebut adalah pengenalan karakter tulisan tangan, yang telah lama diidentifikasi sebagai salah satu permasalahan yang sulit. Untuk memecahkan masalah tersebut dirancang suatu perangkat lunak yang menerapkan sistem yang menyerupai sistem kerja otak manusia yang dikenal dengan Jaringan Syaraf Tiruan (JST). JST merupakan salah satu teknik untuk pengenalan pola yang memiliki kemampuan yang sangat baik.
Kemiringan garis dasar tulisan bercerita banyak tentang bagaimana seseorang mengekspresikan perasaannya. Seorang yang sangat mudah mengekspresikan perasaannya disebut dengan orang yang emosional, sedang yang tidak berarti tidak emosional. Garis dasar adalah garis imajiner yang tercipta ketika bagian bawah dari huruf-huruf kata ataupun kalimat saling terhubung. Garis dasar ini bisa mengarah ke bagian atas kertas, ke bagian bawah kertas, mendatar, ataupun naik turun tidak beraturan[8].
Teknik Elektro 2
Universitas Kristen Maranatha Salah satu metode JST yang memilki kemampuan pembelajaran yang sangat baik adalah metode Backpropagation yang dikembangkan oleh Rumelhart, Hinton dan Williams pada tahun 1986. Kelemahan metode Backpropagation adalah pelatihan akan berjalan dengan lambat jika dimensi input terlalu besar. Untuk mengatasi masalah tersebut biasanya dilakukan praproses tertentu untuk mengekstraksi ciri pada data input sehingga dimensi input-nya menjadi lebih kecil. Beberapa modifikasi dari metode Backpropagation telah diajukan untuk menambah kecepatan pembelajaran. Martin Riedmiller dan Heinrich Braun telah mengembangkan suatu metode yang disebut Resilient Backpropagation (RPROP). Menurut Riedmiller & Braun (1993), algoritma RPROP sejauh ini terbukti sebagai metode yang memiliki kecepatan pembelajaran yang baik dan juga andal.
Pada penelitian ini metode yang digunakan adalah Resilient Backpropagation sebagai algoritma pembelajaran dan pengujian.
I.2 Perumusan Masalah
Terdapat beberapa perumusan masalah dalam pembuatan Tugas Akhir ini. Adapun perumusan masalah tersebut antara lain :
1. Bagaimana merancang JST (Jaringan Saraf Tiruan) dengan menggunakan Algoritma Resilient Backpropagation dalam matlab ? 2. Bagaimana proses pengenalan pola kemiringan garis dasar tulisan
tangan dengan Algoritma Resilient Backpropagation ?
I.3 Tujuan Tugas Akhir
Tujuan yang nantinya akan dicapai melalui Tugas Akhir ini adalah : 1. Memahami dan menerapkan Algoritma Resilient Backpropagation. 2. Merancang perangkat lunak yang dapat mengenali pola kemiringan
Teknik Elektro 3
Universitas Kristen Maranatha I.4 Pembatasan Masalah
Batasan-batasan masalah dalam Tugas Akhir ini adalah :
1. Tulisan tangan yang akan digunakan sebagai data latih dan uji ada 72 pola tulisan tangan (40 buah digunakan untuk data latih dan 32 buah sebagai data uji).
2. Responden menuliskan tulisan tangannya pada kertas yang dibatasi kotak berukuran 21 x 17 cm.
3. Tulisan tangan dipindai dengan resolusi 200 dpi dan komponen warna 24 bit format Red Green Blue (RGB) untuk memperoleh citra tulisan tangan.
4. Citra tulisan tangan yang digunakan adalah 50 x 1000 piksel dengan ekstensi Joint Photographic Experts Group (JPEG).
5. Teknik pelatihan dan pengujian yang digunakan adalah Resilient Backpropagation.
6. Pola garis dasar yang digunakan (garis dasar lurus, menaik, menurun, dan tidak beraturan).
7. Pola garis lurus derajat kemiringan sudutnya (θ) sebesar -3° < θ < 3°, pola garis menaik derajat kemiringan sudutnya (θ) sebesar θ≥ 3°, pola garis menurun derajat kemiringan sudutnya (θ) sebesar θ ≤ -3° dan pola garis tidak beraturan derajat kemiringan sudutnya (θ) tidak beraturan
Teknik Elektro 4
Universitas Kristen Maranatha I.5 Sistematika Penulisan
Sistematika yang akan digunakan untuk menyusun laporan ini adalah sebagai berikut :
Bab 1. Pendahuluan
Merupakan bab yang menjelaskan mengenai latar belakang masalah, identifikasi masalah, batasan masalah, tujuan Tugas Akhir, dan sistematika penulisan dari Tugas Akhir ini.
Bab 2. Landasan Teori
Merupakan bab yang disusun untuk memberikan penjelasan mengenai Teori Dasar Citra, Pengolahan Citra Digital, metode Jaringan Syaraf Tiruan dan Algoritma Resilient Backpropagation. Bab 3. Perancangan Perangkat Lunak
Bab ini berisi penjelasan desain yang akan dilakukan untuk membuat perangkat lunak penganalisa kepribadian dari tulisan tangan dengan menggunakan Algoritma Resilient Backpropagation.
Bab 4. Simulasi dan Analisa
Bab ini berisi hasil yang diperoleh dari penelitian dan analisa data yang diperoleh melalui Tugas Akhir ini.
Bab 5. Kesimpulan dan Saran
Teknik Elektro
68 Universitas Kristen Maranatha
Pada bab ini disimpulkan hasil pengamatan dan saran-saran untuk perbaikan penelitian selanjutnya.
V.1 Kesimpulan
1. Pengenalan pola tulisan tangan menggunakan Jaringan Saraf Tiruan Resilient Backpropagation telah berhasil diimplementasikan dan dapat
berfungsi untuk mengenali karakter seseorang sesuai referensi yang ada.
2. Dari 32 sampel data uji pengenalan pola garis dasar tulisan tangan menggunakan nilai rata-rata posisi pixel bernilai 1, sistem mampu mengenali dengan benar 21 data uji atau 65,63 %. Adapun besar presentase pengenalan per pola:
• Untuk Pola Garis Lurus : 75% • Untuk Pola Garis Menaik : 62,5% • Untuk Pola Garis Menurun : 37,5% • Untuk Pola Garis Acak : 87,5%
V.2 Saran
1. Arsitektur tektur Jaringan Syaraf Tiruan Resilient Backpropagation untuk pengenalan pola garis dasar tulisan tangan dapat dikembangkan dengan melakukan pengenalan secara online.
2. Penggunaan metode ekstraksi ciri untuk meningkatkan akurasi pengenalan Jaringan Syaraf Tiruan.
69
Universitas Kristen Maranatha [2] Ghosh,Rajib, Mandal,Gouranga, Skew Detection and Correction of Online
Bangla Handwritten Word ,July 2012.
[3] Haykin, Simon. Neural Networks: A Comprehensive Foundation. Second Edition. New Jersey: Prentice-Hal, Inc. 1999.
[4] Heaton, Jeff . Introduction to Neural Networks with Java. Second Edition. St. Louis: Heaton Research. 2008.
[5] Jek Siang. Jong. Jaringan Syaraf Tiruan & Pemogramannya menggunakan MATLAB, Andi, Yogyakarta. 2004.
[6] Karohs,Erika. Measurements in Handwriting with illustrations and comprehensive interpretation: ISHA
[7] Kusumadewi, Sri. Membangun Jaringan Syaraf Tiruan Menggunakan MATLAB & Excel Link, Graha Mulia, Yogyakarta.
2004.
[8] Ludvianto, Bayu. Analisis Tulisan Tangan, Gramedia Pustaka Utama, Jakarta. 2011.
[9] Rafael.C.Gonzales. Digital Image Processing. New Jersey: Prentice Hall. 2001.
[10] Riedmiller, M & Braun, H. A Direct Adaptive Method For Faster Backpropagation Learning : The RPROP Algorithm. 1993.
[11] Rojas, Raúl. Neural Networks A Systematic Introduction. Germany: Springer. 1996.
[12] R.Thomas & G.W.Awcock. Applied Image Processing. Singapore: Mc Graw-Hill International Edition. 1996.
[13] Saputro, D. W. Pengenalan Karakter Tulisan Tangan
Dengan Menggunakan Jaringan Syaraf Tiruan Propagasi
Balik Resilient . Skripsi. Jurusan Ilmu Komputer Fakultas Matematika