TUGAS 3 (Tugas Pemrograman JST)

Listing Program Matlab

%-------------------------------
%PROGRAM JARINGAN SYARAF TIRUAN
%KELOMPOK  
%ADRIAN TYAS BANGUN N
%DEDDY HARI S
%DEZA ARIFFANDI
%DIAN ANGGA T.
%RIDWIN SENTOSO
%-------------------------------

clear all;
clc;
disp ('PROGRAM JARINGAN SYARAF TIRUAN DENGAN MENGGUNAKAN MATLAB')
disp (' ');
disp ('disusun oleh :');
disp ('1. Adrian Tyas Bangun ');
disp ('2. Deddy Hari S ');
disp ('3. Deza Ariffandi ');
disp ('4. Dian Angga  ');
disp ('5. Ridwin Sentoso ');
disp (' ');
disp ('Program JST ini menggunakan 3 input dengan satu output. Dan menggunakan 1 hidden layer.');
disp ('Bobot dari neuron akan dihitung secara acak. Iterasi hanya dilakukan sampai 5 kali. ');
disp (' ');
disp ('Masukan nilai x1 - x3 dan Fd dengan digit biner');
x1 = input ('nilai x1 = ');
x2 = input ('nilai x2 = ');
x3 = input ('nilai x3 = ');
x = [x1; x2 ;x3];
disp('nilai nilai x :');
disp (x);
Fd = input ('masukan target dari operasi yang diinginkan (Fd): ');
disp(' ');
disp('w dan v di notasikan dalam bentuk matrix');

%proses iterasi 1
disp('ITERASI 1');
i=3;
j=3;
k=1;
w = randn(i,j);
v = randn(k,i);
disp('w :');
disp(w);
disp('v :');
disp(v);
h = w*x;
disp('h : ');
disp(h);
j = mat2cell(h, [1 1 1],[1]);

h1 = cell2mat(j(1));
h2 = cell2mat(j(2));
h3 = cell2mat(j(3));

if h1>=0
    H1 = 1;
elseif h1 <0
    H1 = 0;
end;
if h2>=0
    H2 = 1;
elseif h2 <0
    H2 = 0;
end;
if h3>=0
    H3 = 1;
elseif h3 <0
    H3 = 0;
end;
H = [H1;H2;H3];
disp ('H :');disp (H);

y = v*H;
disp('y :');
disp(y);

Y = (y);
if Y>=0
    Fn = 1;
elseif Y < 0
    Fn = 0;
end;

disp ('Fn :');
disp (Fn);

E = Fn - Fd;
disp ('Errornya :');
disp(E);

%PROSES ITERASI 2-A
%---------------------------------------------------
if E > 0
    i=3;
j=3;
k=1;
w = randn(i,j);
v = randn(k,i);

disp('ITERASI 2');
disp('w :');
disp(w);
disp('v :');
disp(v);
h = w*x;
disp('h : ');
disp(h);
j = mat2cell(h, [1 1 1],[1]);

h1 = cell2mat(j(1));
h2 = cell2mat(j(2));
h3 = cell2mat(j(3));

if h1>=0
    H1 = 1;
elseif h1 <0
    H1 = 0;
end;
if h2>=0
    H2 = 1;
elseif h2 <0
    H2 = 0;
end;
if h3>=0
    H3 = 1;
elseif h3 <0
    H3 = 0;
end;
H = [H1;H2;H3];
disp ('H :');disp (H);

y = v*H;
disp('y :');
disp(y);

Y = (y);
if Y>=0
    Fn = 1;
elseif Y < 0
    Fn = 0;
end;

disp ('Fn :');
disp (Fn);

E = Fn - Fd;
disp ('Errornya :');
disp(E);

%PROSES ITERASI 2-B
elseif E < 0
disp('ITERASI 2');
i=3;
j=3;
k=1;
w = randn(i,j);
v = randn(k,i);

disp('w :');
disp(w);
disp('v :');
disp(v);
h = w*x;
disp('h : ');
disp(h);
j = mat2cell(h, [1 1 1],[1]);

h1 = cell2mat(j(1));
h2 = cell2mat(j(2));
h3 = cell2mat(j(3));

if h1>=0
    H1 = 1;
elseif h1 <0
    H1 = 0;
end;
if h2>=0
    H2 = 1;
elseif h2 <0
    H2 = 0;
end;
if h3>=0
    H3 = 1;
elseif h3 <0
    H3 = 0;
end;
H = [H1;H2;H3];
disp ('H :');disp (H);

y = v*H;
disp('y :');
disp(y);

Y = (y);
if Y>=0
    Fn = 1;
elseif Y < 0
    Fn = 0;
end;

disp ('Fn :');
disp (Fn);

E = Fn - Fd;
disp ('Errornya :');
disp(E);

else
    disp('fungsi berhasil');
end;
   
%PROSES ITERASI 3-A
%---------------------------------------------------
disp('ITERASI 3');
if E > 0
    i=3;
j=3;
k=1;
w = randn(i,j);
v = randn(k,i);
disp('w :');
disp(w);
disp('v :');
disp(v);
h = w*x;
disp('h : ');
disp(h);
j = mat2cell(h, [1 1 1],[1]);

h1 = cell2mat(j(1));
h2 = cell2mat(j(2));
h3 = cell2mat(j(3));

if h1>=0
    H1 = 1;
elseif h1 <0
    H1 = 0;
end;
if h2>=0
    H2 = 1;
elseif h2 <0
    H2 = 0;
end;
if h3>=0
    H3 = 1;
elseif h3 <0
    H3 = 0;
end;
H = [H1;H2;H3];
disp ('H :');disp (H);

y = v*H;
disp('y :');
disp(y);

Y = (y);
if Y>=0
    Fn = 1;
elseif Y < 0
    Fn = 0;
end;

disp ('Fn :');
disp (Fn);

E = Fn - Fd;
disp ('Errornya :');
disp(E);

%PROSES ITERASI 3-B
elseif E < 0
i=3;
j=3;
k=1;
w = randn(i,j);
v = randn(k,i);
disp('w :');
disp(w);
disp('v :');
disp(v);
h = w*x;
disp('h : ');
disp(h);
j = mat2cell(h, [1 1 1],[1]);

h1 = cell2mat(j(1));
h2 = cell2mat(j(2));
h3 = cell2mat(j(3));

if h1>=0
    H1 = 1;
elseif h1 <0
    H1 = 0;
end;
if h2>=0
    H2 = 1;
elseif h2 <0
    H2 = 0;
end;
if h3>=0
    H3 = 1;
elseif h3 <0
    H3 = 0;
end;
H = [H1;H2;H3];
disp ('H :');disp (H);

y = v*H;
disp('y :');
disp(y);

Y = (y);
if Y>=0
    Fn = 1;
elseif Y < 0
    Fn = 0;
end;

disp ('Fn :');
disp (Fn);

E = Fn - Fd;
disp ('Errornya :');
disp(E);

else
    disp('fungsi berhasil');
end;

%PROSES ITERASI 4-A
%---------------------------------------------------
disp('ITERASI 4');
if E > 0
i=3;
j=3;
k=1;
w = randn(i,j);
v = randn(k,i);
disp('w :');
disp(w);
disp('v :');
disp(v);
h = w*x;
disp('h : ');
disp(h);
j = mat2cell(h, [1 1 1],[1]);

h1 = cell2mat(j(1));
h2 = cell2mat(j(2));
h3 = cell2mat(j(3));

if h1>=0
    H1 = 1;
elseif h1 <0
    H1 = 0;
end;
if h2>=0
    H2 = 1;
elseif h2 <0
    H2 = 0;
end;
if h3>=0
    H3 = 1;
elseif h3 <0
    H3 = 0;
end;
H = [H1;H2;H3];
disp ('H :');disp (H);

y = v*H;
disp('y :');
disp(y);

Y = (y);
if Y>=0
    Fn = 1;
elseif Y < 0
    Fn = 0;
end;

disp ('Fn :');
disp (Fn);

E = Fn - Fd;
disp ('Errornya :');
disp(E);

%PROSES ITERASI 4-B
elseif E < 0
i=3;
j=3;
k=1;
w = randn(i,j);
v = randn(k,i);
disp('w :');
disp(w);
disp('v :');
disp(v);
h = w*x;
disp('h : ');
disp(h);
j = mat2cell(h, [1 1 1],[1]);

h1 = cell2mat(j(1));
h2 = cell2mat(j(2));
h3 = cell2mat(j(3));

if h1>=0
    H1 = 1;
elseif h1 <0
    H1 = 0;
end;
if h2>=0
    H2 = 1;
elseif h2 <0
    H2 = 0;
end;
if h3>=0
    H3 = 1;
elseif h3 <0
    H3 = 0;
end;
H = [H1;H2;H3];
disp ('H :');disp (H);

y = v*H;
disp('y :');
disp(y);

Y = (y);
if Y>=0
    Fn = 1;
elseif Y < 0
    Fn = 0;
end;

disp ('Fn :');
disp (Fn);

E = Fn - Fd;
disp ('Errornya :');
disp(E);

else
    disp('fungsi berhasil');
end;

%PROSES ITERASI 5-A
%---------------------------------------------------
disp('ITERASI 5');
if E > 0
i=3;
j=3;
k=1;
w = randn(i,j);
v = randn(k,i);
disp('w :');
disp(w);
disp('v :');
disp(v);
h = w*x;
disp('h : ');
disp(h);
j = mat2cell(h, [1 1 1],[1]);

h1 = cell2mat(j(1));
h2 = cell2mat(j(2));
h3 = cell2mat(j(3));

if h1>=0
    H1 = 1;
elseif h1 <0
    H1 = 0;
end;
if h2>=0
    H2 = 1;
elseif h2 <0
    H2 = 0;
end;
if h3>=0
    H3 = 1;
elseif h3 <0
    H3 = 0;
end;
H = [H1;H2;H3];
disp ('H :');disp (H);

y = v*H;
disp('y :');
disp(y);

Y = (y);
if Y>=0
    Fn = 1;
elseif Y < 0
    Fn = 0;
end;

disp ('Fn :');
disp (Fn);

E = Fn - Fd;
disp ('Errornya :');
disp(E);

%PROSES ITERASI 5-B
elseif E < 0
i=3;
j=3;
k=1;
w = randn(i,j);
v = randn(k,i);
disp('w :');
disp(w);
disp('v :');
disp(v);
h = w*x;
disp('h : ');
disp(h);
j = mat2cell(h, [1 1 1],[1]);

h1 = cell2mat(j(1));
h2 = cell2mat(j(2));
h3 = cell2mat(j(3));

if h1>=0
    H1 = 1;
elseif h1 <0
    H1 = 0;
end;
if h2>=0
    H2 = 1;
elseif h2 <0
    H2 = 0;
end;
if h3>=0
    H3 = 1;
elseif h3 <0
    H3 = 0;
end;
H = [H1;H2;H3];
disp ('H :');disp (H);

y = v*H;
disp('y :');
disp(y);

Y = (y);
if Y>=0
    Fn = 1;
elseif Y < 0
    Fn = 0;
end;

disp ('Fn :');
disp (Fn);

E = Fn - Fd;
disp ('Errornya :');
disp(E);

else
    disp('fungsi berhasil');
end;


Hasil Eksekusi

 PROGRAM JARINGAN SYARAF TIRUAN DENGAN MENGGUNAKAN MATLAB

disusun oleh :
1. Adrian Tyas Bangun
2. Deddy Hari S
3. Deza Ariffandi
4. Dian Angga
5. Ridwin Sentoso

Program JST ini menggunakan 3 input dengan satu output. Dan menggunakan 1 hidden layer.
Bobot dari neuron akan dihitung secara acak. Iterasi hanya dilakukan sampai 5 kali.

Masukan nilai x1 - x3 dan Fd dengan digit biner
nilai x1 = 1
nilai x2 = 2
nilai x3 = 3
nilai nilai x :
     1
     2
     3

masukan target dari operasi yang diinginkan (Fd): 1

w dan v di notasikan dalam bentuk matrix
ITERASI 1
w :
    0.0860    0.4620   -0.6313
   -2.0046   -0.3210   -2.3252
   -0.4931    1.2366   -1.2316

v :
    1.0556   -0.1132    0.3792

h :
   -0.8838
   -9.6222
   -1.7149

H :
     0
     0
     0

y :
     0

Fn :
     1

Errornya :
     0

fungsi berhasil
ITERASI 3
fungsi berhasil
ITERASI 4
fungsi berhasil
ITERASI 5
fungsi berhasil